public inbox for gcc-bugs@sourceware.org
help / color / mirror / Atom feed
* [Bug go/61244] New: gccgo: ICE in write_specific_type_functions
@ 2014-05-20  7:13 dvyukov at google dot com
  2014-12-12 19:15 ` [Bug go/61244] gccgo: ICE in write_specific_type_functions [GoSmith] cmang at google dot com
                   ` (4 more replies)
  0 siblings, 5 replies; 6+ messages in thread
From: dvyukov at google dot com @ 2014-05-20  7:13 UTC (permalink / raw)
  To: gcc-bugs

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

            Bug ID: 61244
           Summary: gccgo: ICE in write_specific_type_functions
           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

Created attachment 32824
  --> https://gcc.gnu.org/bugzilla/attachment.cgi?id=32824&action=edit
reproducer

$ gccgo -v
Using built-in specs.
COLLECT_GCC=gccgo
COLLECT_LTO_WRAPPER=libexec/gcc/x86_64-unknown-linux-gnu/4.10.0/lto-wrapper
Target: x86_64-unknown-linux-gnu
Configured with: ../configure --enable-languages=c,c++,go --disable-bootstrap
--enable-checking=yes --disable-multilib --prefix=gcc_trunk/install
Thread model: posix
gcc version 4.10.0 20140516 (experimental) (GCC)

The reproducer program is attached.

$ go build -compiler=gccgo 0.go
go1: internal compiler error: in write_specific_type_functions, at
go/gofrontend/types.cc:1819
0x628f2a Type::write_specific_type_functions(Gogo*, Named_type*,
std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&,
Function_type*, std::basic_string<char, std::char_traits<char>,
std::allocator<char> > const&, Function_type*)
    ../../gcc/go/gofrontend/types.cc:1819
0x6276bf Type::specific_type_functions(Gogo*, Named_type*, Function_type*,
Function_type*, Named_object**, Named_object**)
    ../../gcc/go/gofrontend/types.cc:1798
0x627c86 Type::type_functions(Gogo*, Named_type*, Function_type*,
Function_type*, Named_object**, Named_object**)
    ../../gcc/go/gofrontend/types.cc:1675
0x630194 Type::type_descriptor_constructor(Gogo*, int, Named_type*, Methods
const*, bool)
    ../../gcc/go/gofrontend/types.cc:2016
0x6321f3 Array_type::array_type_descriptor(Gogo*, Named_type*)
    ../../gcc/go/gofrontend/types.cc:6121
0x62a5db Type::make_type_descriptor_var(Gogo*)
    ../../gcc/go/gofrontend/types.cc:1249
0x62a796 Type::type_descriptor_pointer(Gogo*, Location)
    ../../gcc/go/gofrontend/types.cc:1206
0x5bf412 Type_descriptor_expression::do_get_backend(Translate_context*)
    ../../gcc/go/gofrontend/expressions.cc:13863
0x5bb6eb Call_expression::do_get_backend(Translate_context*)
    ../../gcc/go/gofrontend/expressions.cc:9425
0x5a23f6 Unary_expression::do_get_backend(Translate_context*)
    ../../gcc/go/gofrontend/expressions.cc:4039
0x607491 If_statement::do_get_backend(Translate_context*)
    ../../gcc/go/gofrontend/statements.cc:3200
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
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


^ permalink raw reply	[flat|nested] 6+ messages in thread

* [Bug go/61244] gccgo: ICE in write_specific_type_functions [GoSmith]
  2014-05-20  7:13 [Bug go/61244] New: gccgo: ICE in write_specific_type_functions dvyukov at google dot com
@ 2014-12-12 19:15 ` cmang at google dot com
  2014-12-12 19:28 ` dvyukov at google dot com
                   ` (3 subsequent siblings)
  4 siblings, 0 replies; 6+ messages in thread
From: cmang at google dot com @ 2014-12-12 19:15 UTC (permalink / raw)
  To: gcc-bugs

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

Chris Manghane <cmang at google dot com> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|UNCONFIRMED                 |ASSIGNED
   Last reconfirmed|                            |2014-12-12
                 CC|                            |cmang at google dot com
           Assignee|ian at airs dot com                |cmang at google dot com
     Ever confirmed|0                           |1

--- Comment #1 from Chris Manghane <cmang at google dot com> ---
This can reproduced with a smaller program:

package main
function main() {
        switch i := (interface{})(0); i.(type) {
        case [0]string:
        }
}


^ permalink raw reply	[flat|nested] 6+ messages in thread

* [Bug go/61244] gccgo: ICE in write_specific_type_functions [GoSmith]
  2014-05-20  7:13 [Bug go/61244] New: gccgo: ICE in write_specific_type_functions dvyukov at google dot com
  2014-12-12 19:15 ` [Bug go/61244] gccgo: ICE in write_specific_type_functions [GoSmith] cmang at google dot com
@ 2014-12-12 19:28 ` dvyukov at google dot com
  2014-12-12 20:05 ` cmang at google dot com
                   ` (2 subsequent siblings)
  4 siblings, 0 replies; 6+ messages in thread
From: dvyukov at google dot com @ 2014-12-12 19:28 UTC (permalink / raw)
  To: gcc-bugs

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

--- Comment #2 from Dmitry Vyukov <dvyukov at google dot com> ---
Chris, when you fix these, please also add tests to the main Go repo. These are
code patterns that we never saw before. Collections of these patterns will be a
great asset for regression testing and any future Go compilers.


^ permalink raw reply	[flat|nested] 6+ messages in thread

* [Bug go/61244] gccgo: ICE in write_specific_type_functions [GoSmith]
  2014-05-20  7:13 [Bug go/61244] New: gccgo: ICE in write_specific_type_functions dvyukov at google dot com
  2014-12-12 19:15 ` [Bug go/61244] gccgo: ICE in write_specific_type_functions [GoSmith] cmang at google dot com
  2014-12-12 19:28 ` dvyukov at google dot com
@ 2014-12-12 20:05 ` cmang at google dot com
  2014-12-14  0:55 ` ian at gcc dot gnu.org
  2015-01-06 14:14 ` cmang at google dot com
  4 siblings, 0 replies; 6+ messages in thread
From: cmang at google dot com @ 2014-12-12 20:05 UTC (permalink / raw)
  To: gcc-bugs

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

--- Comment #3 from Chris Manghane <cmang at google dot com> ---
I plan to add the test cases that GoSmith uncovered once the remaining GoSmith
issues are resolved since it's possible some of them might overlap.


^ permalink raw reply	[flat|nested] 6+ messages in thread

* [Bug go/61244] gccgo: ICE in write_specific_type_functions [GoSmith]
  2014-05-20  7:13 [Bug go/61244] New: gccgo: ICE in write_specific_type_functions dvyukov at google dot com
                   ` (2 preceding siblings ...)
  2014-12-12 20:05 ` cmang at google dot com
@ 2014-12-14  0:55 ` ian at gcc dot gnu.org
  2015-01-06 14:14 ` cmang at google dot com
  4 siblings, 0 replies; 6+ messages in thread
From: ian at gcc dot gnu.org @ 2014-12-14  0:55 UTC (permalink / raw)
  To: gcc-bugs

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

--- Comment #4 from ian at gcc dot gnu.org <ian at gcc dot gnu.org> ---
Author: ian
Date: Sun Dec 14 00:55:01 2014
New Revision: 218715

URL: https://gcc.gnu.org/viewcvs?rev=218715&root=gcc&view=rev
Log:
    PR go/61244
compiler: Traverse type descriptor expressions.

Modified:
    trunk/gcc/go/gofrontend/expressions.cc


^ permalink raw reply	[flat|nested] 6+ messages in thread

* [Bug go/61244] gccgo: ICE in write_specific_type_functions [GoSmith]
  2014-05-20  7:13 [Bug go/61244] New: gccgo: ICE in write_specific_type_functions dvyukov at google dot com
                   ` (3 preceding siblings ...)
  2014-12-14  0:55 ` ian at gcc dot gnu.org
@ 2015-01-06 14:14 ` cmang at google dot com
  4 siblings, 0 replies; 6+ messages in thread
From: cmang at google dot com @ 2015-01-06 14:14 UTC (permalink / raw)
  To: gcc-bugs

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

Chris Manghane <cmang at google dot com> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|ASSIGNED                    |RESOLVED
         Resolution|---                         |FIXED

--- Comment #5 from Chris Manghane <cmang at google dot com> ---
Fixed and test added to Go testsuite.


^ permalink raw reply	[flat|nested] 6+ messages in thread

end of thread, other threads:[~2015-01-06 14:14 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2014-05-20  7:13 [Bug go/61244] New: gccgo: ICE in write_specific_type_functions dvyukov at google dot com
2014-12-12 19:15 ` [Bug go/61244] gccgo: ICE in write_specific_type_functions [GoSmith] cmang at google dot com
2014-12-12 19:28 ` dvyukov at google dot com
2014-12-12 20:05 ` cmang at google dot com
2014-12-14  0:55 ` ian at gcc dot gnu.org
2015-01-06 14:14 ` cmang at google dot com

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).