compiler: Don't crash on erroneous unnamed integer type descriptor.
authorIan Lance Taylor <ian@gcc.gnu.org>
Thu, 16 Feb 2012 22:26:41 +0000 (22:26 +0000)
committerIan Lance Taylor <ian@gcc.gnu.org>
Thu, 16 Feb 2012 22:26:41 +0000 (22:26 +0000)
From-SVN: r184318

gcc/go/gofrontend/types.cc

index 13cd48a904349535cb7c8240e53bcdea9ec60381..61ec555cc54803aed752ea59325e069b40e9a832 100644 (file)
@@ -2595,7 +2595,7 @@ Integer_type::do_get_backend(Gogo* gogo)
 Expression*
 Integer_type::do_type_descriptor(Gogo* gogo, Named_type* name)
 {
-  go_assert(name != NULL);
+  go_assert(name != NULL || saw_errors());
   return this->plain_type_descriptor(gogo, this->runtime_type_kind_, name);
 }
 
@@ -2730,7 +2730,7 @@ Float_type::do_get_backend(Gogo* gogo)
 Expression*
 Float_type::do_type_descriptor(Gogo* gogo, Named_type* name)
 {
-  go_assert(name != NULL);
+  go_assert(name != NULL || saw_errors());
   return this->plain_type_descriptor(gogo, this->runtime_type_kind_, name);
 }
 
@@ -2857,7 +2857,7 @@ Complex_type::do_get_backend(Gogo* gogo)
 Expression*
 Complex_type::do_type_descriptor(Gogo* gogo, Named_type* name)
 {
-  go_assert(name != NULL);
+  go_assert(name != NULL || saw_errors());
   return this->plain_type_descriptor(gogo, this->runtime_type_kind_, name);
 }