From ca30ba74c97fac7fa2c9da54a3bc45bda11bfd2c Mon Sep 17 00:00:00 2001 From: Ian Lance Taylor Date: Mon, 7 May 2012 18:36:36 +0000 Subject: [PATCH] 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 --- gcc/go/gofrontend/expressions.cc | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/gcc/go/gofrontend/expressions.cc b/gcc/go/gofrontend/expressions.cc index 39824bfcb6f8..f6fb65866f00 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); -- 2.47.2