Don't crash on erroneous type descriptor in interface conversion.
authorian <ian@138bc75d-0d04-0410-961f-82ee72b054a4>
Wed, 23 Feb 2011 05:02:40 +0000 (05:02 +0000)
committerian <ian@138bc75d-0d04-0410-961f-82ee72b054a4>
Wed, 23 Feb 2011 05:02:40 +0000 (05:02 +0000)
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@170429 138bc75d-0d04-0410-961f-82ee72b054a4

gcc/go/gofrontend/expressions.cc

index 264dd57..050942c 100644 (file)
@@ -362,6 +362,8 @@ Expression::convert_type_to_interface(Translate_context* context,
       first_field_value = fold_convert_loc(location, const_ptr_type_node,
                                           method_table);
     }
+  if (first_field_value == error_mark_node)
+    return error_mark_node;
 
   // Start building a constructor for the value we will return.