From: Ian Lance Taylor Date: Wed, 22 Dec 2010 16:47:53 +0000 (+0000) Subject: Don't crash on array type with erroneous length expression. X-Git-Tag: releases/gcc-4.6.0~1659 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=8d2866eafb6865f084791494a7a449065cb0287c;p=thirdparty%2Fgcc.git Don't crash on array type with erroneous length expression. From-SVN: r168176 --- diff --git a/gcc/go/gofrontend/types.cc b/gcc/go/gofrontend/types.cc index c0914cac78e5..7a9bfc740284 100644 --- a/gcc/go/gofrontend/types.cc +++ b/gcc/go/gofrontend/types.cc @@ -4359,8 +4359,12 @@ Array_type::get_length_tree(Gogo* gogo) // expression. FIXME: This won't work in general. Translate_context context(gogo, NULL, NULL, NULL_TREE); tree len = this->length_->get_tree(&context); - len = convert_to_integer(integer_type_node, len); - this->length_tree_ = save_expr(len); + if (len != error_mark_node) + { + len = convert_to_integer(integer_type_node, len); + len = save_expr(len); + } + this->length_tree_ = len; } } return this->length_tree_;