Index: gdb/macroexp.c |
diff --git a/gdb/macroexp.c b/gdb/macroexp.c |
index fa3431169ea3845832017b52b39b81a78e416047..3d98550f2f63f42bebb4070a3fae985f02c81a48 100644 |
--- a/gdb/macroexp.c |
+++ b/gdb/macroexp.c |
@@ -1,5 +1,5 @@ |
/* C preprocessor macro expansion for GDB. |
- Copyright (C) 2002, 2007-2012 Free Software Foundation, Inc. |
+ Copyright (C) 2002-2013 Free Software Foundation, Inc. |
Contributed by Red Hat, Inc. |
This file is part of GDB. |
@@ -337,7 +337,6 @@ get_character_constant (struct macro_buffer *tok, char *p, char *end) |
&& p[1] == '\'')) |
{ |
char *tok_start = p; |
- char *body_start; |
int char_count = 0; |
if (*p == '\'') |
@@ -347,7 +346,6 @@ get_character_constant (struct macro_buffer *tok, char *p, char *end) |
else |
gdb_assert_not_reached ("unexpected character constant"); |
- body_start = p; |
for (;;) |
{ |
if (p >= end) |
@@ -362,8 +360,11 @@ get_character_constant (struct macro_buffer *tok, char *p, char *end) |
} |
else if (*p == '\\') |
{ |
- p++; |
- char_count += c_parse_escape (&p, NULL); |
+ const char *s, *o; |
+ |
+ s = o = ++p; |
+ char_count += c_parse_escape (&s, NULL); |
+ p += s - o; |
} |
else |
{ |
@@ -416,8 +417,11 @@ get_string_literal (struct macro_buffer *tok, char *p, char *end) |
"constants.")); |
else if (*p == '\\') |
{ |
- p++; |
- c_parse_escape (&p, NULL); |
+ const char *s, *o; |
+ |
+ s = o = ++p; |
+ c_parse_escape (&s, NULL); |
+ p += s - o; |
} |
else |
p++; |
@@ -700,7 +704,6 @@ macro_stringify (const char *str) |
{ |
struct macro_buffer buffer; |
int len = strlen (str); |
- char *result; |
init_buffer (&buffer, len); |
stringify (&buffer, str, len); |
@@ -1437,7 +1440,7 @@ macro_expand_once (const char *source, |
char * |
-macro_expand_next (char **lexptr, |
+macro_expand_next (const char **lexptr, |
macro_lookup_ftype *lookup_func, |
void *lookup_baton) |
{ |
@@ -1445,7 +1448,7 @@ macro_expand_next (char **lexptr, |
struct cleanup *back_to; |
/* Set up SRC to refer to the input text, pointed to by *lexptr. */ |
- init_shared_buffer (&src, *lexptr, strlen (*lexptr)); |
+ init_shared_buffer (&src, (char *) *lexptr, strlen (*lexptr)); |
/* Set up DEST to receive the expansion, if there is one. */ |
init_buffer (&dest, 0); |