2002-05-03 Pierre Muller <muller@ics.u-strasbg.fr>
authorPierre Muller <muller@sourceware.org>
Fri, 3 May 2002 08:23:12 +0000 (08:23 +0000)
committerPierre Muller <muller@sourceware.org>
Fri, 3 May 2002 08:23:12 +0000 (08:23 +0000)
* f-exp.y: Also use new prev_lexptr variable
to improve error reporting. Based on Michael Snyder
2002-04-24 dated patch to c-exp.y.
* jv-exp.y: Likewise.
* m2-exp.y: Likewise.

gdb/ChangeLog
gdb/f-exp.y
gdb/jv-exp.y
gdb/m2-exp.y

index e267bff087c468b7763ba15228d7558ff88a879a..459dfb95df428eb50b0b09274cedb06b4c057a7c 100644 (file)
@@ -1,3 +1,11 @@
+2002-05-03  Pierre Muller  <muller@ics.u-strasbg.fr>
+
+       * f-exp.y: Also use new prev_lexptr variable
+       to improve error reporting. Based on Michael Snyder
+       2002-04-24 dated patch to c-exp.y.
+       * jv-exp.y: Likewise.
+       * m2-exp.y: Likewise.
+
 2002-05-02  Elena Zannoni  <ezannoni@redhat.com>
 
        * valops.c (value_arg_coerce): Don't coerce arrays to pointers if
index 7cbfd5ac8f2b4eba41010a82f87c86051b1c1a19..e11687726ef5edf7be767e18da710e7794c357b4 100644 (file)
@@ -924,7 +924,9 @@ yylex ()
   char *tokstart;
   
  retry:
-  
+  prev_lexptr = lexptr;
   tokstart = lexptr;
   
   /* First of all, let us make sure we are not dealing with the 
@@ -1171,5 +1173,8 @@ void
 yyerror (msg)
      char *msg;
 {
+  if (prev_lexptr)
+    lexptr = prev_lexptr;
+
   error ("A %s in expression, near `%s'.", (msg ? msg : "error"), lexptr);
 }
index 1b80ab4582760228b090efa4c38f5df023238106..495bf3e05379b53a16c14944039e6832dbef66c0 100644 (file)
@@ -862,6 +862,8 @@ yylex ()
   
  retry:
 
+  prev_lexptr = lexptr;
+
   tokstart = lexptr;
   /* See if it is a special token of length 3.  */
   for (i = 0; i < sizeof tokentab3 / sizeof tokentab3[0]; i++)
@@ -1207,6 +1209,9 @@ void
 yyerror (msg)
      char *msg;
 {
+  if (prev_lexptr)
+    lexptr = prev_lexptr;
+
   error ("A %s in expression, near `%s'.", (msg ? msg : "error"), lexptr);
 }
 
index eaaad5a3882a110f43af4cb63ec865f3c0f28d3c..772c6b7b2860763bd265863746446853b40cd345 100644 (file)
@@ -821,6 +821,8 @@ yylex ()
 
  retry:
 
+  prev_lexptr = lexptr;
+
   tokstart = lexptr;
 
 
@@ -1090,5 +1092,8 @@ void
 yyerror (msg)
      char *msg;
 {
+  if (prev_lexptr)
+    lexptr = prev_lexptr;
+
   error ("A %s in expression, near `%s'.", (msg ? msg : "error"), lexptr);
 }