From 67eff3d9f72b4ae733dd519331f90757d48f0590 Mon Sep 17 00:00:00 2001 From: Ian Lance Taylor Date: Tue, 21 Dec 2010 23:19:43 +0000 Subject: Don't crash on calling new with an erroneous type. From-SVN: r168144 --- gcc/go/gofrontend/expressions.cc | 4 ++++ 1 file changed, 4 insertions(+) (limited to 'gcc/go') diff --git a/gcc/go/gofrontend/expressions.cc b/gcc/go/gofrontend/expressions.cc index 5cd9e66..faea908 100644 --- a/gcc/go/gofrontend/expressions.cc +++ b/gcc/go/gofrontend/expressions.cc @@ -10242,9 +10242,13 @@ tree Allocation_expression::do_get_tree(Translate_context* context) { tree type_tree = this->type_->get_tree(context->gogo()); + if (type_tree == error_mark_node) + return error_mark_node; tree size_tree = TYPE_SIZE_UNIT(type_tree); tree space = context->gogo()->allocate_memory(this->type_, size_tree, this->location()); + if (space == error_mark_node) + return error_mark_node; return fold_convert(build_pointer_type(type_tree), space); } -- cgit v1.1