OSDN Git Service

Don't crash on reference to field with erroneous type.
authorian <ian@138bc75d-0d04-0410-961f-82ee72b054a4>
Wed, 19 Jan 2011 20:47:21 +0000 (20:47 +0000)
committerian <ian@138bc75d-0d04-0410-961f-82ee72b054a4>
Wed, 19 Jan 2011 20:47:21 +0000 (20:47 +0000)
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@169027 138bc75d-0d04-0410-961f-82ee72b054a4

gcc/go/gofrontend/expressions.cc

index 2171564..6fa1b99 100644 (file)
@@ -9988,6 +9988,8 @@ Field_reference_expression::do_get_tree(Translate_context* context)
       field = DECL_CHAIN(field);
       gcc_assert(field != NULL_TREE);
     }
+  if (TREE_TYPE(field) == error_mark_node)
+    return error_mark_node;
   return build3(COMPONENT_REF, TREE_TYPE(field), struct_tree, field,
                NULL_TREE);
 }