summaryrefslogtreecommitdiff
path: root/gdb/c-exp.y
diff options
context:
space:
mode:
authorMichael Snyder <msnyder@specifix.com>2002-04-24 22:26:32 +0000
committerMichael Snyder <msnyder@specifix.com>2002-04-24 22:26:32 +0000
commitf8ad5530d529398dc14f111e6c6f19c28f0de16a (patch)
tree81d53aaa27716136c8cc7fb0c0b1087c147a6a41 /gdb/c-exp.y
parente581dfedd230329f0b68927fa0040ef9452fb22a (diff)
downloadgdb-f8ad5530d529398dc14f111e6c6f19c28f0de16a.tar.gz
2002-04-24 Michael Snyder <msnyder@redhat.com>
* parser-defs.h (prev_lexptr): New external variable. * parse.c (parse_exp_1): Set prev_lexptr to null before calling the language-specific parser. * c-exp.y (yylex): Set prev_lexptr to start of current token. (yyerror): Use prev_lexptr in error reporting.
Diffstat (limited to 'gdb/c-exp.y')
-rw-r--r--gdb/c-exp.y4
1 files changed, 4 insertions, 0 deletions
diff --git a/gdb/c-exp.y b/gdb/c-exp.y
index 0ccac03f431..a15a4456bce 100644
--- a/gdb/c-exp.y
+++ b/gdb/c-exp.y
@@ -1246,6 +1246,7 @@ yylex ()
retry:
+ prev_lexptr = lexptr;
unquoted_expr = 1;
tokstart = lexptr;
@@ -1766,5 +1767,8 @@ void
yyerror (msg)
char *msg;
{
+ if (prev_lexptr)
+ lexptr = prev_lexptr;
+
error ("A %s in expression, near `%s'.", (msg ? msg : "error"), lexptr);
}