Go patch committed: Don't crash copying empty composite literal

Ian Lance Taylor iant@golang.org
Tue Dec 16 19:22:00 GMT 2014


This patch by Chris Manghane fixes a compiler crash when copying an
empty composite literal.  This fixes GCC PR 61264.  Bootstrapped and
ran Go testsuite on x86_64-unknown-linux-gnu.  Committed to mainline.

Ian
-------------- next part --------------
diff -r 22a19b12e472 go/expressions.cc
--- a/go/expressions.cc	Tue Dec 16 10:50:55 2014 -0800
+++ b/go/expressions.cc	Tue Dec 16 11:12:37 2014 -0800
@@ -11588,7 +11588,10 @@
   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 @@
   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());
   }
 


More information about the Gcc-patches mailing list