diff options
author | Ian Lance Taylor <ian@gcc.gnu.org> | 2012-03-28 21:33:15 +0000 |
---|---|---|
committer | Ian Lance Taylor <ian@gcc.gnu.org> | 2012-03-28 21:33:15 +0000 |
commit | 552ab9772fb2bb59f2e3d3706f2cd304e95c8741 (patch) | |
tree | 711e70281d3f1346e7edb5ee9f977e38586cbbeb /gcc/go/gofrontend/expressions.cc | |
parent | 2310e4504dd63b79f8062abf1f33321416ad92c8 (diff) | |
download | gcc-552ab9772fb2bb59f2e3d3706f2cd304e95c8741.zip gcc-552ab9772fb2bb59f2e3d3706f2cd304e95c8741.tar.gz gcc-552ab9772fb2bb59f2e3d3706f2cd304e95c8741.tar.bz2 |
compiler: fix crashes.
The compiler would crash on:
if true || x, y := 1, 2 {}
and
var s string
s = append(s, "hello")
Reported in issue 3186.
From-SVN: r185928
Diffstat (limited to 'gcc/go/gofrontend/expressions.cc')
-rw-r--r-- | gcc/go/gofrontend/expressions.cc | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/gcc/go/gofrontend/expressions.cc b/gcc/go/gofrontend/expressions.cc index 4c493f8..f2a81de 100644 --- a/gcc/go/gofrontend/expressions.cc +++ b/gcc/go/gofrontend/expressions.cc @@ -7441,6 +7441,8 @@ Builtin_call_expression::check_one_arg() void Builtin_call_expression::do_check_types(Gogo*) { + if (this->is_error_expression()) + return; switch (this->code_) { case BUILTIN_INVALID: |