diff options
author | Ian Lance Taylor <ian@gcc.gnu.org> | 2011-01-19 06:04:00 +0000 |
---|---|---|
committer | Ian Lance Taylor <ian@gcc.gnu.org> | 2011-01-19 06:04:00 +0000 |
commit | 9081b67b9c1d4ed828b03fa2b63861287108ff33 (patch) | |
tree | 70eebdb250cef4bbfacfa7e9f55ed94a99e2a0bb | |
parent | 8ed8ea7900b912c5a4044e76688239df38d3fef2 (diff) | |
download | gcc-9081b67b9c1d4ed828b03fa2b63861287108ff33.zip gcc-9081b67b9c1d4ed828b03fa2b63861287108ff33.tar.gz gcc-9081b67b9c1d4ed828b03fa2b63861287108ff33.tar.bz2 |
Avoid crash with extra struct initializers with abstract types.
From-SVN: r168984
-rw-r--r-- | gcc/go/gofrontend/expressions.cc | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/gcc/go/gofrontend/expressions.cc b/gcc/go/gofrontend/expressions.cc index a11e3d6..819fb61 100644 --- a/gcc/go/gofrontend/expressions.cc +++ b/gcc/go/gofrontend/expressions.cc @@ -10609,6 +10609,10 @@ Struct_construction_expression::do_determine_type(const Type_context*) (*pv)->determine_type(&subcontext); } } + // Extra values are an error we will report elsewhere; we still want + // to determine the type to avoid knockon errors. + for (; pv != this->vals_->end(); ++pv) + (*pv)->determine_type_no_context(); } // Check types. |