From: ian Date: Thu, 24 Feb 2011 13:58:51 +0000 (+0000) Subject: Don't crash when using receive on erroneous channel. X-Git-Tag: upstream/4.9.2~22587 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=5b8368f4dc734299dcf7f84167289f2031f282a9;p=platform%2Fupstream%2Flinaro-gcc.git Don't crash when using receive on erroneous channel. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@170468 138bc75d-0d04-0410-961f-82ee72b054a4 --- diff --git a/gcc/go/gofrontend/expressions.cc b/gcc/go/gofrontend/expressions.cc index 2e31e80..259faa1 100644 --- a/gcc/go/gofrontend/expressions.cc +++ b/gcc/go/gofrontend/expressions.cc @@ -12264,7 +12264,11 @@ tree Receive_expression::do_get_tree(Translate_context* context) { Channel_type* channel_type = this->channel_->type()->channel_type(); - gcc_assert(channel_type != NULL); + if (channel_type == NULL) + { + gcc_assert(this->channel_->type()->is_error_type()); + return error_mark_node; + } Type* element_type = channel_type->element_type(); tree element_type_tree = element_type->get_tree(context->gogo());