Insert semicolon at EOF if necessary.
authorIan Lance Taylor <ian@gcc.gnu.org>
Tue, 14 Dec 2010 18:52:09 +0000 (18:52 +0000)
committerIan Lance Taylor <ian@gcc.gnu.org>
Tue, 14 Dec 2010 18:52:09 +0000 (18:52 +0000)
From-SVN: r167809

gcc/go/gofrontend/lex.cc

index bc2531e8bd33f7dbc3d4186b8aea6b46f7d4f55d..ad1a1fe4fc748da016ff36412810ef62beeddfcc 100644 (file)
@@ -542,7 +542,13 @@ Lex::next_token()
   while (true)
     {
       if (!this->require_line())
-       return this->make_eof_token();
+       {
+         bool add_semi_at_eol = this->add_semi_at_eol_;
+         this->add_semi_at_eol_ = false;
+         if (add_semi_at_eol)
+           return this->make_operator(OPERATOR_SEMICOLON, 1);
+         return this->make_eof_token();
+       }
 
       const char* p = this->linebuf_ + this->lineoff_;
       const char* pend = this->linebuf_ + this->linesize_;