aboutsummaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
authorIan Lance Taylor <ian@gcc.gnu.org>2011-01-19 20:47:21 +0000
committerIan Lance Taylor <ian@gcc.gnu.org>2011-01-19 20:47:21 +0000
commite76efdbd96800827f020ac6423c64abb51d298eb (patch)
treec2f07a2d68b5018934fc4f7870182a010c63b037 /gcc
parent3e03217e07c23f07028c21b16280fdc2048a9f01 (diff)
downloadgcc-e76efdbd96800827f020ac6423c64abb51d298eb.zip
gcc-e76efdbd96800827f020ac6423c64abb51d298eb.tar.gz
gcc-e76efdbd96800827f020ac6423c64abb51d298eb.tar.bz2
Don't crash on reference to field with erroneous type.
From-SVN: r169027
Diffstat (limited to 'gcc')
-rw-r--r--gcc/go/gofrontend/expressions.cc2
1 files changed, 2 insertions, 0 deletions
diff --git a/gcc/go/gofrontend/expressions.cc b/gcc/go/gofrontend/expressions.cc
index 2171564..6fa1b99 100644
--- a/gcc/go/gofrontend/expressions.cc
+++ b/gcc/go/gofrontend/expressions.cc
@@ -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);
}