[Bug go/83071] gccgo: ICE in set_type

2017-11-21 Thread pmatos at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=83071

--- Comment #5 from pmatos at gcc dot gnu.org ---
Thanks. It's working.

[Bug go/83071] gccgo: ICE in set_type

2017-11-20 Thread ian at airs dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=83071

Ian Lance Taylor  changed:

   What|Removed |Added

 Status|UNCONFIRMED |RESOLVED
 Resolution|--- |FIXED

--- Comment #4 from Ian Lance Taylor  ---
Fixed.

[Bug go/83071] gccgo: ICE in set_type

2017-11-20 Thread ian at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=83071

--- Comment #3 from ian at gcc dot gnu.org  ---
Author: ian
Date: Tue Nov 21 06:14:32 2017
New Revision: 254983

URL: https://gcc.gnu.org/viewcvs?rev=254983=gcc=rev
Log:
compiler: report error for ++/-- applied to a non-numeric type

This avoids a compiler crash.

Fixes GCC PR 83071.

Reviewed-on: https://go-review.googlesource.com/78875

Modified:
trunk/gcc/go/gofrontend/MERGE
trunk/gcc/go/gofrontend/statements.cc

[Bug go/83071] gccgo: ICE in set_type

2017-11-20 Thread pmatos at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=83071

--- Comment #2 from pmatos at gcc dot gnu.org ---
(In reply to Ian Lance Taylor from comment #1)
> This is of course a compiler bug, but it's a crash on invalid code.  You
> can't write `input++` when `input` is a string type.  In Go the `++`
> operator only applies to integer types.  When I fix the compiler bug, you
> will get an error compiling this code instead of a crash.

Go beginner here... as in... began today. :)
Thanks for the explanation. Can't wait to try the fixed gccgo.

[Bug go/83071] gccgo: ICE in set_type

2017-11-20 Thread ian at airs dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=83071

--- Comment #1 from Ian Lance Taylor  ---
This is of course a compiler bug, but it's a crash on invalid code.  You can't
write `input++` when `input` is a string type.  In Go the `++` operator only
applies to integer types.  When I fix the compiler bug, you will get an error
compiling this code instead of a crash.