Index: gdb/go-exp.y |
diff --git a/gdb/go-exp.y b/gdb/go-exp.y |
index c3171c381b7026f0bbf3622d41729169c7ea6fa4..50b9cc217b4b088984a56325dbc5e3a72b707a55 100644 |
--- a/gdb/go-exp.y |
+++ b/gdb/go-exp.y |
@@ -1,6 +1,6 @@ |
/* YACC parser for Go expressions, for GDB. |
- Copyright (C) 2012 Free Software Foundation, Inc. |
+ Copyright (C) 2012-2013 Free Software Foundation, Inc. |
This file is part of GDB. |
@@ -52,7 +52,7 @@ |
%{ |
#include "defs.h" |
-#include "gdb_string.h" |
+#include <string.h> |
#include <ctype.h> |
#include "expression.h" |
#include "value.h" |
@@ -158,7 +158,7 @@ void yyerror (char *); |
%{ |
/* YYSTYPE gets defined by %union. */ |
-static int parse_number (char *, int, int, YYSTYPE *); |
+static int parse_number (const char *, int, int, YYSTYPE *); |
static int parse_go_float (struct gdbarch *gdbarch, const char *p, int len, |
DOUBLEST *d, struct type **t); |
%} |
@@ -616,12 +616,12 @@ variable: name_not_typename |
} |
else |
{ |
- struct minimal_symbol *msymbol; |
+ struct bound_minimal_symbol msymbol; |
char *arg = copy_name ($1.stoken); |
msymbol = |
- lookup_minimal_symbol (arg, NULL, NULL); |
- if (msymbol != NULL) |
+ lookup_bound_minimal_symbol (arg); |
+ if (msymbol.minsym != NULL) |
write_exp_msymbol (msymbol); |
else if (!have_full_symbols () |
&& !have_partial_symbols ()) |
@@ -704,7 +704,7 @@ parse_go_float (struct gdbarch *gdbarch, const char *p, int len, |
as our YYSTYPE is different than c-exp.y's */ |
static int |
-parse_number (char *p, int len, int parsed_float, YYSTYPE *putithere) |
+parse_number (const char *p, int len, int parsed_float, YYSTYPE *putithere) |
{ |
/* FIXME: Shouldn't these be unsigned? We don't deal with negative values |
here, and we do kind of silly things like cast to unsigned. */ |
@@ -908,8 +908,8 @@ static int tempbuf_init; |
number of host characters in the literal. */ |
static int |
-parse_string_or_char (char *tokptr, char **outptr, struct typed_stoken *value, |
- int *host_chars) |
+parse_string_or_char (const char *tokptr, const char **outptr, |
+ struct typed_stoken *value, int *host_chars) |
{ |
int quote; |
@@ -1049,7 +1049,7 @@ lex_one_token (void) |
int c; |
int namelen; |
unsigned int i; |
- char *tokstart; |
+ const char *tokstart; |
int saw_structop = last_was_structop; |
char *copy; |
@@ -1124,7 +1124,7 @@ lex_one_token (void) |
/* Might be a floating point number. */ |
if (lexptr[1] < '0' || lexptr[1] > '9') |
{ |
- if (in_parse_field) |
+ if (parse_completion) |
last_was_structop = 1; |
goto symbol; /* Nope, must be a symbol. */ |
} |
@@ -1143,7 +1143,7 @@ lex_one_token (void) |
{ |
/* It's a number. */ |
int got_dot = 0, got_e = 0, toktype; |
- char *p = tokstart; |
+ const char *p = tokstart; |
int hex = input_radix > 10; |
if (c == '0' && (p[1] == 'x' || p[1] == 'X')) |
@@ -1190,7 +1190,7 @@ lex_one_token (void) |
case '@': |
{ |
- char *p = &tokstart[1]; |
+ const char *p = &tokstart[1]; |
size_t len = strlen ("entry"); |
while (isspace (*p)) |
@@ -1283,7 +1283,8 @@ lex_one_token (void) |
&& strncmp (tokstart, "thread", namelen) == 0 |
&& (tokstart[namelen] == ' ' || tokstart[namelen] == '\t')) |
{ |
- char *p = tokstart + namelen + 1; |
+ const char *p = tokstart + namelen + 1; |
+ |
while (*p == ' ' || *p == '\t') |
p++; |
if (*p >= '0' && *p <= '9') |
@@ -1311,7 +1312,7 @@ lex_one_token (void) |
if (*tokstart == '$') |
return DOLLAR_VARIABLE; |
- if (in_parse_field && *lexptr == '\0') |
+ if (parse_completion && *lexptr == '\0') |
saw_name_at_eof = 1; |
return NAME; |
} |
@@ -1362,10 +1363,10 @@ build_packaged_name (const char *package, int package_len, |
to mean the global scope. */ |
static int |
-package_name_p (const char *name, struct block *block) |
+package_name_p (const char *name, const struct block *block) |
{ |
struct symbol *sym; |
- int is_a_field_of_this; |
+ struct field_of_this_result is_a_field_of_this; |
sym = lookup_symbol (name, block, STRUCT_DOMAIN, &is_a_field_of_this); |
@@ -1402,11 +1403,11 @@ classify_unsafe_function (struct stoken function_name) |
The result is one of NAME, NAME_OR_INT, or TYPENAME. */ |
static int |
-classify_packaged_name (struct block *block) |
+classify_packaged_name (const struct block *block) |
{ |
char *copy; |
struct symbol *sym; |
- int is_a_field_of_this = 0; |
+ struct field_of_this_result is_a_field_of_this; |
copy = copy_name (yylval.sval); |
@@ -1415,7 +1416,7 @@ classify_packaged_name (struct block *block) |
if (sym) |
{ |
yylval.ssym.sym = sym; |
- yylval.ssym.is_a_field_of_this = is_a_field_of_this; |
+ yylval.ssym.is_a_field_of_this = is_a_field_of_this.type != NULL; |
} |
return NAME; |
@@ -1430,12 +1431,12 @@ classify_packaged_name (struct block *block) |
The result is one of NAME, NAME_OR_INT, or TYPENAME. */ |
static int |
-classify_name (struct block *block) |
+classify_name (const struct block *block) |
{ |
struct type *type; |
struct symbol *sym; |
char *copy; |
- int is_a_field_of_this = 0; |
+ struct field_of_this_result is_a_field_of_this; |
copy = copy_name (yylval.sval); |
@@ -1458,7 +1459,7 @@ classify_name (struct block *block) |
if (sym) |
{ |
yylval.ssym.sym = sym; |
- yylval.ssym.is_a_field_of_this = is_a_field_of_this; |
+ yylval.ssym.is_a_field_of_this = is_a_field_of_this.type != NULL; |
return NAME; |
} |
@@ -1484,7 +1485,7 @@ classify_name (struct block *block) |
{ |
yylval.ssym.stoken = sval; |
yylval.ssym.sym = sym; |
- yylval.ssym.is_a_field_of_this = is_a_field_of_this; |
+ yylval.ssym.is_a_field_of_this = is_a_field_of_this.type != NULL; |
return NAME; |
} |
} |