From: Ian Lance Taylor Date: Tue, 16 Dec 2014 19:14:54 +0000 (+0000) Subject: re PR go/61264 (gccgo: ICE in __normal_iterator [GoSmith]) X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=6a85804bf7b5aaf3288995fd6157af907c4d6ab1;p=gcc.git re PR go/61264 (gccgo: ICE in __normal_iterator [GoSmith]) PR go/61264 compiler: Fix copying behavior for empty composite literals. From-SVN: r218789 --- diff --git a/gcc/go/gofrontend/expressions.cc b/gcc/go/gofrontend/expressions.cc index f6d43811e16..9f68f77dc47 100644 --- a/gcc/go/gofrontend/expressions.cc +++ b/gcc/go/gofrontend/expressions.cc @@ -11588,7 +11588,10 @@ class Struct_construction_expression : public Expression do_copy() { Struct_construction_expression* ret = - new Struct_construction_expression(this->type_, this->vals_->copy(), + new Struct_construction_expression(this->type_, + (this->vals_ == NULL + ? NULL + : this->vals_->copy()), this->location()); if (this->traverse_order_ != NULL) ret->set_traverse_order(this->traverse_order_); @@ -12353,7 +12356,10 @@ class Map_construction_expression : public Expression Expression* do_copy() { - return new Map_construction_expression(this->type_, this->vals_->copy(), + return new Map_construction_expression(this->type_, + (this->vals_ == NULL + ? NULL + : this->vals_->copy()), this->location()); }