diff options
author | Ian Lance Taylor <ian@gcc.gnu.org> | 2011-01-19 20:54:30 +0000 |
---|---|---|
committer | Ian Lance Taylor <ian@gcc.gnu.org> | 2011-01-19 20:54:30 +0000 |
commit | 966082b6c475918a4155315cd53dec7a6ff4e529 (patch) | |
tree | 234b0d39539c3733854eacb01500026ad49a3b40 /gcc | |
parent | 03029de43d8a963b32e80c7e36567d429e6c5947 (diff) | |
download | gcc-966082b6c475918a4155315cd53dec7a6ff4e529.zip gcc-966082b6c475918a4155315cd53dec7a6ff4e529.tar.gz gcc-966082b6c475918a4155315cd53dec7a6ff4e529.tar.bz2 |
Remember erroneous type when creating GENERIC for named type.
From-SVN: r169030
Diffstat (limited to 'gcc')
-rw-r--r-- | gcc/go/gofrontend/types.cc | 10 |
1 files changed, 8 insertions, 2 deletions
diff --git a/gcc/go/gofrontend/types.cc b/gcc/go/gofrontend/types.cc index 1a68e77..418e8a8 100644 --- a/gcc/go/gofrontend/types.cc +++ b/gcc/go/gofrontend/types.cc @@ -7085,7 +7085,10 @@ Named_type::do_get_tree(Gogo* gogo) this->named_tree_ = t; t = this->type_->struct_type()->fill_in_tree(gogo, t); if (t == error_mark_node) - return error_mark_node; + { + this->named_tree_ = error_mark_node; + return error_mark_node; + } break; case TYPE_ARRAY: @@ -7120,7 +7123,10 @@ Named_type::do_get_tree(Gogo* gogo) this->named_tree_ = t; t = this->type_->interface_type()->fill_in_tree(gogo, t); if (t == error_mark_node) - return error_mark_node; + { + this->named_tree_ = error_mark_node; + return error_mark_node; + } } break; |