compiler: Don't parse malformed receiver/parameters.
authorIan Lance Taylor <ian@gcc.gnu.org>
Fri, 24 Jul 2015 18:51:13 +0000 (18:51 +0000)
committerIan Lance Taylor <ian@gcc.gnu.org>
Fri, 24 Jul 2015 18:51:13 +0000 (18:51 +0000)
    Fixes golang/go#11576.

    Reviewed-on: https://go-review.googlesource.com/12157

From-SVN: r226185

gcc/go/gofrontend/MERGE
gcc/go/gofrontend/parse.cc

index 797ec549aadddfcb47cd4433806ac7c3d0cadf42..09ff6c316e76906f6f18d3f8c5fc79bfbc958caf 100644 (file)
@@ -1,4 +1,4 @@
-46117382a58843af60fc2feab68c433a96f79e79
+e4a5e2b2a9dc556685db09421a95871f195f768b
 
 The first line of this file holds the git revision number of the last
 merge done from the gofrontend repository.
index 113371c7b216b2a9ee0c04779c1d2ed90f6244f2..b7a0c3973a45b283f99a9a486277a16111e4b0a3 100644 (file)
@@ -787,9 +787,11 @@ Parse::parameters(Typed_identifier_list** pparams, bool* is_varargs)
   // The optional trailing comma is picked up in parameter_list.
 
   if (!token->is_op(OPERATOR_RPAREN))
-    error_at(this->location(), "expected %<)%>");
-  else
-    this->advance_token();
+    {
+      error_at(this->location(), "expected %<)%>");
+      return false;
+    }
+  this->advance_token();
 
   if (saw_error)
     return false;