cppmacro.c (_cpp_backup_tokens): Revert previous check-in.
authorNeil Booth <neil@daikokuya.demon.co.uk>
Mon, 19 Nov 2001 21:04:49 +0000 (21:04 +0000)
committerNeil Booth <neil@gcc.gnu.org>
Mon, 19 Nov 2001 21:04:49 +0000 (21:04 +0000)
* cppmacro.c (_cpp_backup_tokens): Revert previous check-in.
Don't fall off the base token run.
* gcc.dg/cpp/fpreprocessed.c: New test case.

From-SVN: r47182

gcc/ChangeLog
gcc/cppmacro.c
gcc/testsuite/ChangeLog

index ddcdb30..c909c1c 100644 (file)
@@ -1,3 +1,8 @@
+2001-11-19  Neil Booth  <neil@daikokuya.demon.co.uk>
+
+       * cppmacro.c (_cpp_backup_tokens): Revert previous check-in.
+       Don't fall off the base token run.
+
 2001-11-19  Jason Wilkins <fenix@io.com>
 
        * Makefile.in: Use INSTALL_SCRIPT not INSTALL_PROGRAM.
index dbee62d..17dfe15 100644 (file)
@@ -1087,12 +1087,14 @@ _cpp_backup_tokens (pfile, count)
       pfile->lookaheads += count;
       while (count--)
        {
-         if (pfile->cur_token == pfile->cur_run->base)
+         pfile->cur_token--;
+         if (pfile->cur_token == pfile->cur_run->base
+             /* Possible with -fpreprocessed and no leading #line.  */
+             && pfile->cur_run->prev != NULL)
            {
              pfile->cur_run = pfile->cur_run->prev;
              pfile->cur_token = pfile->cur_run->limit;
            }
-         pfile->cur_token--;
        }
     }
   else
index a4038a7..cebf71d 100644 (file)
@@ -1,3 +1,7 @@
+2001-11-19  Neil Booth  <neil@daikokuya.demon.co.uk>
+
+       * gcc.dg/cpp/fpreprocessed.c: New test case.
+
 2001-11-18  Joseph S. Myers  <jsm28@cam.ac.uk>
 
        * gcc.dg/cpp/assert_trad1.c, gcc.dg/cpp/tr-paste.c,