summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorian <ian@138bc75d-0d04-0410-961f-82ee72b054a4>2011-01-04 20:18:31 +0000
committerian <ian@138bc75d-0d04-0410-961f-82ee72b054a4>2011-01-04 20:18:31 +0000
commita68492b4c22cdea7e31f1f9ee07d3a47f9a35e45 (patch)
tree2b81f349a8401c90101625e477dfd4704762f2f5
parent5e85f268a376519eaef12f1d53b545270ed992fd (diff)
downloadppe42-gcc-a68492b4c22cdea7e31f1f9ee07d3a47f9a35e45.tar.gz
ppe42-gcc-a68492b4c22cdea7e31f1f9ee07d3a47f9a35e45.zip
Don't crash if named constant has no type when converting to GENERIC.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@168483 138bc75d-0d04-0410-961f-82ee72b054a4
-rw-r--r--gcc/go/gofrontend/expressions.cc3
1 files changed, 2 insertions, 1 deletions
diff --git a/gcc/go/gofrontend/expressions.cc b/gcc/go/gofrontend/expressions.cc
index 013adacebcf..840fdb37d10 100644
--- a/gcc/go/gofrontend/expressions.cc
+++ b/gcc/go/gofrontend/expressions.cc
@@ -2680,7 +2680,8 @@ Const_expression::do_get_tree(Translate_context* context)
// object is an abstract int or float, we try to get the abstract
// value. Otherwise we may lose something in the conversion.
if (this->type_ != NULL
- && this->constant_->const_value()->type()->is_abstract())
+ && (this->constant_->const_value()->type() == NULL
+ || this->constant_->const_value()->type()->is_abstract()))
{
Expression* expr = this->constant_->const_value()->expr();
mpz_t ival;
OpenPOWER on IntegriCloud