diff options
author | Ian Lance Taylor <ian@gcc.gnu.org> | 2012-05-07 18:36:36 +0000 |
---|---|---|
committer | Ian Lance Taylor <ian@gcc.gnu.org> | 2012-05-07 18:36:36 +0000 |
commit | ca30ba74c97fac7fa2c9da54a3bc45bda11bfd2c (patch) | |
tree | b47b23126fa614e444f4e05b6fdd5afc57b04be7 /gcc/go | |
parent | c414667bc2a1aa812048cc6f7bba291820dcf5e9 (diff) | |
download | gcc-ca30ba74c97fac7fa2c9da54a3bc45bda11bfd2c.zip gcc-ca30ba74c97fac7fa2c9da54a3bc45bda11bfd2c.tar.gz gcc-ca30ba74c97fac7fa2c9da54a3bc45bda11bfd2c.tar.bz2 |
compiler: fix ICE in handling of rune constants.
This patch corrects an ICE in handling on constant expressions
such as
const r = ^'a'
Part of issue 9.
From-SVN: r187264
Diffstat (limited to 'gcc/go')
-rw-r--r-- | gcc/go/gofrontend/expressions.cc | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/gcc/go/gofrontend/expressions.cc b/gcc/go/gofrontend/expressions.cc index 39824bf..f6fb658 100644 --- a/gcc/go/gofrontend/expressions.cc +++ b/gcc/go/gofrontend/expressions.cc @@ -3712,7 +3712,10 @@ Unary_expression::eval_constant(Operator op, const Numeric_constant* unc, return false; mpz_t uval; - unc->get_int(&uval); + if (unc->is_rune()) + unc->get_rune(&uval); + else + unc->get_int(&uval); mpz_t val; mpz_init(val); |