Centralize yacc interface names remapping (yyparse, yylex, yyerror, etc)
This factors out all the yy-variables remapping to a single file, instead of each parser having to do the same, with different prefixes. With this, a parser just needs to define the prefix they want and include yy-remap.h, which does the dirty job. Note this renames the c_error, ada_error, etc. functions. Writing the remapping pattern as: #define yyerror GDB_YY_REMAP (error) instead of: #define yyerror GDB_YY_REMAP (yyerror) would have avoided the renaming. However, that would be problematic if we have a macro 'foo' in scope, when we write: #define yyfoo GDB_YY_REMAP (foo) as that would expand 'foo'. The c_yyerror etc. naming end ups indicating that this is a yacc related function more clearly, so feels like a good change, anyway. gdb/ChangeLog: 2016-04-22 Pedro Alves <palves@redhat.com> * ada-exp.y: Remove all yy symbol remappings. (GDB_YY_REMAP_PREFIX): Define. Include "yy-remap.h". * ada-lang.c (ada_language_defn): Adjust. * ada-lang.h (ada_error): Rename to ... (ada_yyerror): ... this. * c-exp.y: Remove all yy symbol remappings. (GDB_YY_REMAP_PREFIX): Define. Include "yy-remap.h". * c-lang.c (c_language_defn, cplus_language_defn) (asm_language_defn, minimal_language_defn): Adjust. * c-lang.h (c_error): Rename to ... (c_yyerror): ... this. * d-exp.y: Remove all yy symbol remappings. (GDB_YY_REMAP_PREFIX): Define. Include "yy-remap.h". * d-lang.c (d_language_defn): Adjust. * d-lang.h (d_error): Rename to ... (d_yyerror): ... this. * f-exp.y: Remove all yy symbol remappings. (GDB_YY_REMAP_PREFIX): Define. Include "yy-remap.h". * f-lang.c (f_language_defn): Adjust. * f-lang.h (f_error): Rename to ... (f_yyerror): ... this. * go-exp.y: Remove all yy symbol remappings. (GDB_YY_REMAP_PREFIX): Define. Include "yy-remap.h". * go-lang.c (go_language_defn): Adjust. * go-lang.h (go_error): Rename to ... (go_yyerror): ... this. * jv-exp.y: Remove all yy symbol remappings. (GDB_YY_REMAP_PREFIX): Define. Include "yy-remap.h". * jv-lang.c (java_language_defn): Adjust. * jv-lang.h (java_error): Rename to ... (java_yyerror): ... this. * m2-exp.y: Remove all yy symbol remappings. (GDB_YY_REMAP_PREFIX): Define. Include "yy-remap.h". * m2-lang.c (m2_language_defn): Adjust. * m2-lang.h (m2_error): Rename to ... (m2_yyerror): ... this. * objc-exp.y: Remove all yy symbol remappings. (GDB_YY_REMAP_PREFIX): Define. Include "yy-remap.h". * objc-lang.c (objc_language_defn): Adjust. * opencl-lang.c (opencl_language_defn): Adjust. * p-exp.y: Remove all yy symbol remappings. (GDB_YY_REMAP_PREFIX): Define. Include "yy-remap.h". * p-lang.c (pascal_language_defn): Adjust. * p-lang.h (pascal_error): Rename to ... (pascal_yyerror): ... this. * yy-remap.h: New file.
This commit is contained in:
parent
6290672f89
commit
b3f11165aa
@ -1,3 +1,61 @@
|
||||
2016-04-22 Pedro Alves <palves@redhat.com>
|
||||
|
||||
* ada-exp.y: Remove all yy symbol remappings.
|
||||
(GDB_YY_REMAP_PREFIX): Define.
|
||||
Include "yy-remap.h".
|
||||
* ada-lang.c (ada_language_defn): Adjust.
|
||||
* ada-lang.h (ada_error): Rename to ...
|
||||
(ada_yyerror): ... this.
|
||||
* c-exp.y: Remove all yy symbol remappings.
|
||||
(GDB_YY_REMAP_PREFIX): Define.
|
||||
Include "yy-remap.h".
|
||||
* c-lang.c (c_language_defn, cplus_language_defn)
|
||||
(asm_language_defn, minimal_language_defn): Adjust.
|
||||
* c-lang.h (c_error): Rename to ...
|
||||
(c_yyerror): ... this.
|
||||
* d-exp.y: Remove all yy symbol remappings.
|
||||
(GDB_YY_REMAP_PREFIX): Define.
|
||||
Include "yy-remap.h".
|
||||
* d-lang.c (d_language_defn): Adjust.
|
||||
* d-lang.h (d_error): Rename to ...
|
||||
(d_yyerror): ... this.
|
||||
* f-exp.y: Remove all yy symbol remappings.
|
||||
(GDB_YY_REMAP_PREFIX): Define.
|
||||
Include "yy-remap.h".
|
||||
* f-lang.c (f_language_defn): Adjust.
|
||||
* f-lang.h (f_error): Rename to ...
|
||||
(f_yyerror): ... this.
|
||||
* go-exp.y: Remove all yy symbol remappings.
|
||||
(GDB_YY_REMAP_PREFIX): Define.
|
||||
Include "yy-remap.h".
|
||||
* go-lang.c (go_language_defn): Adjust.
|
||||
* go-lang.h (go_error): Rename to ...
|
||||
(go_yyerror): ... this.
|
||||
* jv-exp.y: Remove all yy symbol remappings.
|
||||
(GDB_YY_REMAP_PREFIX): Define.
|
||||
Include "yy-remap.h".
|
||||
* jv-lang.c (java_language_defn): Adjust.
|
||||
* jv-lang.h (java_error): Rename to ...
|
||||
(java_yyerror): ... this.
|
||||
* m2-exp.y: Remove all yy symbol remappings.
|
||||
(GDB_YY_REMAP_PREFIX): Define.
|
||||
Include "yy-remap.h".
|
||||
* m2-lang.c (m2_language_defn): Adjust.
|
||||
* m2-lang.h (m2_error): Rename to ...
|
||||
(m2_yyerror): ... this.
|
||||
* objc-exp.y: Remove all yy symbol remappings.
|
||||
(GDB_YY_REMAP_PREFIX): Define.
|
||||
Include "yy-remap.h".
|
||||
* objc-lang.c (objc_language_defn): Adjust.
|
||||
* opencl-lang.c (opencl_language_defn): Adjust.
|
||||
* p-exp.y: Remove all yy symbol remappings.
|
||||
(GDB_YY_REMAP_PREFIX): Define.
|
||||
Include "yy-remap.h".
|
||||
* p-lang.c (pascal_language_defn): Adjust.
|
||||
* p-lang.h (pascal_error): Rename to ...
|
||||
(pascal_yyerror): ... this.
|
||||
* yy-remap.h: New file.
|
||||
|
||||
2016-04-22 Pedro Alves <palves@redhat.com>
|
||||
|
||||
* common/common-exceptions.h (GDB_XCPT_TRY): Remove mention of
|
||||
|
@ -50,62 +50,10 @@
|
||||
|
||||
#define parse_type(ps) builtin_type (parse_gdbarch (ps))
|
||||
|
||||
/* Remap normal yacc parser interface names (yyparse, yylex, yyerror, etc),
|
||||
as well as gratuitiously global symbol names, so we can have multiple
|
||||
yacc generated parsers in gdb. These are only the variables
|
||||
produced by yacc. If other parser generators (bison, byacc, etc) produce
|
||||
additional global names that conflict at link time, then those parser
|
||||
generators need to be fixed instead of adding those names to this list. */
|
||||
|
||||
/* NOTE: This is clumsy, especially since BISON and FLEX provide --prefix
|
||||
options. I presume we are maintaining it to accommodate systems
|
||||
without BISON? (PNH) */
|
||||
|
||||
#define yymaxdepth ada_maxdepth
|
||||
/* ada_parse calls this after initialization */
|
||||
#define yyparse ada_parse_internal
|
||||
#define yylex ada_lex
|
||||
#define yyerror ada_error
|
||||
#define yylval ada_lval
|
||||
#define yychar ada_char
|
||||
#define yydebug ada_debug
|
||||
#define yypact ada_pact
|
||||
#define yyr1 ada_r1
|
||||
#define yyr2 ada_r2
|
||||
#define yydef ada_def
|
||||
#define yychk ada_chk
|
||||
#define yypgo ada_pgo
|
||||
#define yyact ada_act
|
||||
#define yyexca ada_exca
|
||||
#define yyerrflag ada_errflag
|
||||
#define yynerrs ada_nerrs
|
||||
#define yyps ada_ps
|
||||
#define yypv ada_pv
|
||||
#define yys ada_s
|
||||
#define yy_yys ada_yys
|
||||
#define yystate ada_state
|
||||
#define yytmp ada_tmp
|
||||
#define yyv ada_v
|
||||
#define yy_yyv ada_yyv
|
||||
#define yyval ada_val
|
||||
#define yylloc ada_lloc
|
||||
#define yyreds ada_reds /* With YYDEBUG defined */
|
||||
#define yytoks ada_toks /* With YYDEBUG defined */
|
||||
#define yyname ada_name /* With YYDEBUG defined */
|
||||
#define yyrule ada_rule /* With YYDEBUG defined */
|
||||
#define yydefred ada_yydefred
|
||||
#define yyss ada_yyss
|
||||
#define yysslim ada_yysslim
|
||||
#define yyssp ada_yyssp
|
||||
#define yystacksize ada_yystacksize
|
||||
#define yyvs ada_yyvs
|
||||
#define yyvsp ada_yyvsp
|
||||
|
||||
#ifndef YYDEBUG
|
||||
#define YYDEBUG 1 /* Default to yydebug support */
|
||||
#endif
|
||||
|
||||
#define YYFPRINTF parser_fprintf
|
||||
/* Remap normal yacc parser interface names (yyparse, yylex, yyerror,
|
||||
etc). */
|
||||
#define GDB_YY_REMAP_PREFIX ada_
|
||||
#include "yy-remap.h"
|
||||
|
||||
struct name_info {
|
||||
struct symbol *sym;
|
||||
|
@ -14056,7 +14056,7 @@ const struct language_defn ada_language_defn = {
|
||||
macro_expansion_no,
|
||||
&ada_exp_descriptor,
|
||||
parse,
|
||||
ada_error,
|
||||
ada_yyerror,
|
||||
resolve,
|
||||
ada_printchar, /* Print a character constant */
|
||||
ada_printstr, /* Function to print string constant */
|
||||
|
@ -159,7 +159,7 @@ extern int ada_get_field_index (const struct type *type,
|
||||
|
||||
extern int ada_parse (struct parser_state *); /* Defined in ada-exp.y */
|
||||
|
||||
extern void ada_error (char *); /* Defined in ada-exp.y */
|
||||
extern void ada_yyerror (char *); /* Defined in ada-exp.y */
|
||||
|
||||
/* Defined in ada-typeprint.c */
|
||||
extern void ada_print_type (struct type *, const char *, struct ui_file *, int,
|
||||
|
63
gdb/c-exp.y
63
gdb/c-exp.y
@ -56,65 +56,10 @@
|
||||
|
||||
#define parse_type(ps) builtin_type (parse_gdbarch (ps))
|
||||
|
||||
/* Remap normal yacc parser interface names (yyparse, yylex, yyerror, etc),
|
||||
as well as gratuitiously global symbol names, so we can have multiple
|
||||
yacc generated parsers in gdb. Note that these are only the variables
|
||||
produced by yacc. If other parser generators (bison, byacc, etc) produce
|
||||
additional global names that conflict at link time, then those parser
|
||||
generators need to be fixed instead of adding those names to this list. */
|
||||
|
||||
#define yymaxdepth c_maxdepth
|
||||
#define yyparse c_parse_internal
|
||||
#define yylex c_lex
|
||||
#define yyerror c_error
|
||||
#define yylval c_lval
|
||||
#define yychar c_char
|
||||
#define yydebug c_debug
|
||||
#define yypact c_pact
|
||||
#define yyr1 c_r1
|
||||
#define yyr2 c_r2
|
||||
#define yydef c_def
|
||||
#define yychk c_chk
|
||||
#define yypgo c_pgo
|
||||
#define yyact c_act
|
||||
#define yyexca c_exca
|
||||
#define yyerrflag c_errflag
|
||||
#define yynerrs c_nerrs
|
||||
#define yyps c_ps
|
||||
#define yypv c_pv
|
||||
#define yys c_s
|
||||
#define yy_yys c_yys
|
||||
#define yystate c_state
|
||||
#define yytmp c_tmp
|
||||
#define yyv c_v
|
||||
#define yy_yyv c_yyv
|
||||
#define yyval c_val
|
||||
#define yylloc c_lloc
|
||||
#define yyreds c_reds /* With YYDEBUG defined */
|
||||
#define yytoks c_toks /* With YYDEBUG defined */
|
||||
#define yyname c_name /* With YYDEBUG defined */
|
||||
#define yyrule c_rule /* With YYDEBUG defined */
|
||||
#define yylhs c_yylhs
|
||||
#define yylen c_yylen
|
||||
#define yydefred c_yydefred
|
||||
#define yydgoto c_yydgoto
|
||||
#define yysindex c_yysindex
|
||||
#define yyrindex c_yyrindex
|
||||
#define yygindex c_yygindex
|
||||
#define yytable c_yytable
|
||||
#define yycheck c_yycheck
|
||||
#define yyss c_yyss
|
||||
#define yysslim c_yysslim
|
||||
#define yyssp c_yyssp
|
||||
#define yystacksize c_yystacksize
|
||||
#define yyvs c_yyvs
|
||||
#define yyvsp c_yyvsp
|
||||
|
||||
#ifndef YYDEBUG
|
||||
#define YYDEBUG 1 /* Default to yydebug support */
|
||||
#endif
|
||||
|
||||
#define YYFPRINTF parser_fprintf
|
||||
/* Remap normal yacc parser interface names (yyparse, yylex, yyerror,
|
||||
etc). */
|
||||
#define GDB_YY_REMAP_PREFIX c_
|
||||
#include "yy-remap.h"
|
||||
|
||||
/* The state of the parser, used internally when we are parsing the
|
||||
expression. */
|
||||
|
@ -835,7 +835,7 @@ const struct language_defn c_language_defn =
|
||||
macro_expansion_c,
|
||||
&exp_descriptor_c,
|
||||
c_parse,
|
||||
c_error,
|
||||
c_yyerror,
|
||||
null_post_parser,
|
||||
c_printchar, /* Print a character constant */
|
||||
c_printstr, /* Function to print string constant */
|
||||
@ -962,7 +962,7 @@ const struct language_defn cplus_language_defn =
|
||||
macro_expansion_c,
|
||||
&exp_descriptor_c,
|
||||
c_parse,
|
||||
c_error,
|
||||
c_yyerror,
|
||||
null_post_parser,
|
||||
c_printchar, /* Print a character constant */
|
||||
c_printstr, /* Function to print string constant */
|
||||
@ -1007,7 +1007,7 @@ const struct language_defn asm_language_defn =
|
||||
macro_expansion_c,
|
||||
&exp_descriptor_c,
|
||||
c_parse,
|
||||
c_error,
|
||||
c_yyerror,
|
||||
null_post_parser,
|
||||
c_printchar, /* Print a character constant */
|
||||
c_printstr, /* Function to print string constant */
|
||||
@ -1057,7 +1057,7 @@ const struct language_defn minimal_language_defn =
|
||||
macro_expansion_c,
|
||||
&exp_descriptor_c,
|
||||
c_parse,
|
||||
c_error,
|
||||
c_yyerror,
|
||||
null_post_parser,
|
||||
c_printchar, /* Print a character constant */
|
||||
c_printstr, /* Function to print string constant */
|
||||
|
@ -63,7 +63,7 @@ DEF_ENUM_FLAGS_TYPE (enum c_string_type_values, c_string_type);
|
||||
|
||||
extern int c_parse (struct parser_state *);
|
||||
|
||||
extern void c_error (char *);
|
||||
extern void c_yyerror (char *);
|
||||
|
||||
extern int c_parse_escape (const char **, struct obstack *);
|
||||
|
||||
|
63
gdb/d-exp.y
63
gdb/d-exp.y
@ -55,65 +55,10 @@
|
||||
#define parse_type(ps) builtin_type (parse_gdbarch (ps))
|
||||
#define parse_d_type(ps) builtin_d_type (parse_gdbarch (ps))
|
||||
|
||||
/* Remap normal yacc parser interface names (yyparse, yylex, yyerror, etc),
|
||||
as well as gratuitiously global symbol names, so we can have multiple
|
||||
yacc generated parsers in gdb. Note that these are only the variables
|
||||
produced by yacc. If other parser generators (bison, byacc, etc) produce
|
||||
additional global names that conflict at link time, then those parser
|
||||
generators need to be fixed instead of adding those names to this list. */
|
||||
|
||||
#define yymaxdepth d_maxdepth
|
||||
#define yyparse d_parse_internal
|
||||
#define yylex d_lex
|
||||
#define yyerror d_error
|
||||
#define yylval d_lval
|
||||
#define yychar d_char
|
||||
#define yydebug d_debug
|
||||
#define yypact d_pact
|
||||
#define yyr1 d_r1
|
||||
#define yyr2 d_r2
|
||||
#define yydef d_def
|
||||
#define yychk d_chk
|
||||
#define yypgo d_pgo
|
||||
#define yyact d_act
|
||||
#define yyexca d_exca
|
||||
#define yyerrflag d_errflag
|
||||
#define yynerrs d_nerrs
|
||||
#define yyps d_ps
|
||||
#define yypv d_pv
|
||||
#define yys d_s
|
||||
#define yy_yys d_yys
|
||||
#define yystate d_state
|
||||
#define yytmp d_tmp
|
||||
#define yyv d_v
|
||||
#define yy_yyv d_yyv
|
||||
#define yyval d_val
|
||||
#define yylloc d_lloc
|
||||
#define yyreds d_reds /* With YYDEBUG defined */
|
||||
#define yytoks d_toks /* With YYDEBUG defined */
|
||||
#define yyname d_name /* With YYDEBUG defined */
|
||||
#define yyrule d_rule /* With YYDEBUG defined */
|
||||
#define yylhs d_yylhs
|
||||
#define yylen d_yylen
|
||||
#define yydefre d_yydefred
|
||||
#define yydgoto d_yydgoto
|
||||
#define yysindex d_yysindex
|
||||
#define yyrindex d_yyrindex
|
||||
#define yygindex d_yygindex
|
||||
#define yytable d_yytable
|
||||
#define yycheck d_yycheck
|
||||
#define yyss d_yyss
|
||||
#define yysslim d_yysslim
|
||||
#define yyssp d_yyssp
|
||||
#define yystacksize d_yystacksize
|
||||
#define yyvs d_yyvs
|
||||
#define yyvsp d_yyvsp
|
||||
|
||||
#ifndef YYDEBUG
|
||||
#define YYDEBUG 1 /* Default to yydebug support */
|
||||
#endif
|
||||
|
||||
#define YYFPRINTF parser_fprintf
|
||||
/* Remap normal yacc parser interface names (yyparse, yylex, yyerror,
|
||||
etc). */
|
||||
#define GDB_YY_REMAP_PREFIX d_
|
||||
#include "yy-remap.h"
|
||||
|
||||
/* The state of the parser, used internally when we are parsing the
|
||||
expression. */
|
||||
|
@ -201,7 +201,7 @@ static const struct language_defn d_language_defn =
|
||||
macro_expansion_no,
|
||||
&exp_descriptor_c,
|
||||
d_parse,
|
||||
d_error,
|
||||
d_yyerror,
|
||||
null_post_parser,
|
||||
c_printchar, /* Print a character constant. */
|
||||
c_printstr, /* Function to print string constant. */
|
||||
|
@ -58,7 +58,7 @@ struct builtin_d_type
|
||||
|
||||
extern int d_parse (struct parser_state *);
|
||||
|
||||
extern void d_error (char *);
|
||||
extern void d_yyerror (char *);
|
||||
|
||||
/* Defined in d-lang.c */
|
||||
|
||||
|
63
gdb/f-exp.y
63
gdb/f-exp.y
@ -57,65 +57,10 @@
|
||||
#define parse_type(ps) builtin_type (parse_gdbarch (ps))
|
||||
#define parse_f_type(ps) builtin_f_type (parse_gdbarch (ps))
|
||||
|
||||
/* Remap normal yacc parser interface names (yyparse, yylex, yyerror, etc),
|
||||
as well as gratuitiously global symbol names, so we can have multiple
|
||||
yacc generated parsers in gdb. Note that these are only the variables
|
||||
produced by yacc. If other parser generators (bison, byacc, etc) produce
|
||||
additional global names that conflict at link time, then those parser
|
||||
generators need to be fixed instead of adding those names to this list. */
|
||||
|
||||
#define yymaxdepth f_maxdepth
|
||||
#define yyparse f_parse_internal
|
||||
#define yylex f_lex
|
||||
#define yyerror f_error
|
||||
#define yylval f_lval
|
||||
#define yychar f_char
|
||||
#define yydebug f_debug
|
||||
#define yypact f_pact
|
||||
#define yyr1 f_r1
|
||||
#define yyr2 f_r2
|
||||
#define yydef f_def
|
||||
#define yychk f_chk
|
||||
#define yypgo f_pgo
|
||||
#define yyact f_act
|
||||
#define yyexca f_exca
|
||||
#define yyerrflag f_errflag
|
||||
#define yynerrs f_nerrs
|
||||
#define yyps f_ps
|
||||
#define yypv f_pv
|
||||
#define yys f_s
|
||||
#define yy_yys f_yys
|
||||
#define yystate f_state
|
||||
#define yytmp f_tmp
|
||||
#define yyv f_v
|
||||
#define yy_yyv f_yyv
|
||||
#define yyval f_val
|
||||
#define yylloc f_lloc
|
||||
#define yyreds f_reds /* With YYDEBUG defined */
|
||||
#define yytoks f_toks /* With YYDEBUG defined */
|
||||
#define yyname f_name /* With YYDEBUG defined */
|
||||
#define yyrule f_rule /* With YYDEBUG defined */
|
||||
#define yylhs f_yylhs
|
||||
#define yylen f_yylen
|
||||
#define yydefred f_yydefred
|
||||
#define yydgoto f_yydgoto
|
||||
#define yysindex f_yysindex
|
||||
#define yyrindex f_yyrindex
|
||||
#define yygindex f_yygindex
|
||||
#define yytable f_yytable
|
||||
#define yycheck f_yycheck
|
||||
#define yyss f_yyss
|
||||
#define yysslim f_yysslim
|
||||
#define yyssp f_yyssp
|
||||
#define yystacksize f_yystacksize
|
||||
#define yyvs f_yyvs
|
||||
#define yyvsp f_yyvsp
|
||||
|
||||
#ifndef YYDEBUG
|
||||
#define YYDEBUG 1 /* Default to yydebug support */
|
||||
#endif
|
||||
|
||||
#define YYFPRINTF parser_fprintf
|
||||
/* Remap normal yacc parser interface names (yyparse, yylex, yyerror,
|
||||
etc). */
|
||||
#define GDB_YY_REMAP_PREFIX f_
|
||||
#include "yy-remap.h"
|
||||
|
||||
/* The state of the parser, used internally when we are parsing the
|
||||
expression. */
|
||||
|
@ -246,7 +246,7 @@ const struct language_defn f_language_defn =
|
||||
macro_expansion_no,
|
||||
&exp_descriptor_standard,
|
||||
f_parse, /* parser */
|
||||
f_error, /* parser error function */
|
||||
f_yyerror, /* parser error function */
|
||||
null_post_parser,
|
||||
f_printchar, /* Print character constant */
|
||||
f_printstr, /* function to print string constant */
|
||||
|
@ -25,7 +25,7 @@ struct parser_state;
|
||||
|
||||
extern int f_parse (struct parser_state *);
|
||||
|
||||
extern void f_error (char *); /* Defined in f-exp.y */
|
||||
extern void f_yyerror (char *); /* Defined in f-exp.y */
|
||||
|
||||
extern void f_print_type (struct type *, const char *, struct ui_file *, int,
|
||||
int, const struct type_print_options *);
|
||||
|
57
gdb/go-exp.y
57
gdb/go-exp.y
@ -67,59 +67,10 @@
|
||||
|
||||
#define parse_type(ps) builtin_type (parse_gdbarch (ps))
|
||||
|
||||
/* Remap normal yacc parser interface names (yyparse, yylex, yyerror, etc),
|
||||
as well as gratuitiously global symbol names, so we can have multiple
|
||||
yacc generated parsers in gdb. Note that these are only the variables
|
||||
produced by yacc. If other parser generators (bison, byacc, etc) produce
|
||||
additional global names that conflict at link time, then those parser
|
||||
generators need to be fixed instead of adding those names to this list. */
|
||||
|
||||
#define yymaxdepth go_maxdepth
|
||||
#define yyparse go_parse_internal
|
||||
#define yylex go_lex
|
||||
#define yyerror go_error
|
||||
#define yylval go_lval
|
||||
#define yychar go_char
|
||||
#define yydebug go_debug
|
||||
#define yypact go_pact
|
||||
#define yyr1 go_r1
|
||||
#define yyr2 go_r2
|
||||
#define yydef go_def
|
||||
#define yychk go_chk
|
||||
#define yypgo go_pgo
|
||||
#define yyact go_act
|
||||
#define yyexca go_exca
|
||||
#define yyerrflag go_errflag
|
||||
#define yynerrs go_nerrs
|
||||
#define yyps go_ps
|
||||
#define yypv go_pv
|
||||
#define yys go_s
|
||||
#define yy_yys go_yys
|
||||
#define yystate go_state
|
||||
#define yytmp go_tmp
|
||||
#define yyv go_v
|
||||
#define yy_yyv go_yyv
|
||||
#define yyval go_val
|
||||
#define yylloc go_lloc
|
||||
#define yyreds go_reds /* With YYDEBUG defined */
|
||||
#define yytoks go_toks /* With YYDEBUG defined */
|
||||
#define yyname go_name /* With YYDEBUG defined */
|
||||
#define yyrule go_rule /* With YYDEBUG defined */
|
||||
#define yylhs go_yylhs
|
||||
#define yylen go_yylen
|
||||
#define yydefred go_yydefred
|
||||
#define yydgoto go_yydgoto
|
||||
#define yysindex go_yysindex
|
||||
#define yyrindex go_yyrindex
|
||||
#define yygindex go_yygindex
|
||||
#define yytable go_yytable
|
||||
#define yycheck go_yycheck
|
||||
|
||||
#ifndef YYDEBUG
|
||||
#define YYDEBUG 1 /* Default to yydebug support */
|
||||
#endif
|
||||
|
||||
#define YYFPRINTF parser_fprintf
|
||||
/* Remap normal yacc parser interface names (yyparse, yylex, yyerror,
|
||||
etc). */
|
||||
#define GDB_YY_REMAP_PREFIX go_
|
||||
#include "yy-remap.h"
|
||||
|
||||
/* The state of the parser, used internally when we are parsing the
|
||||
expression. */
|
||||
|
@ -567,7 +567,7 @@ static const struct language_defn go_language_defn =
|
||||
macro_expansion_no,
|
||||
&exp_descriptor_c,
|
||||
go_parse,
|
||||
go_error,
|
||||
go_yyerror,
|
||||
null_post_parser,
|
||||
c_printchar, /* Print a character constant. */
|
||||
c_printstr, /* Function to print string constant. */
|
||||
|
@ -60,7 +60,7 @@ enum go_type
|
||||
|
||||
extern int go_parse (struct parser_state *);
|
||||
|
||||
extern void go_error (char *);
|
||||
extern void go_yyerror (char *);
|
||||
|
||||
/* Defined in go-lang.c. */
|
||||
|
||||
|
63
gdb/jv-exp.y
63
gdb/jv-exp.y
@ -51,65 +51,10 @@
|
||||
#define parse_type(ps) builtin_type (parse_gdbarch (ps))
|
||||
#define parse_java_type(ps) builtin_java_type (parse_gdbarch (ps))
|
||||
|
||||
/* Remap normal yacc parser interface names (yyparse, yylex, yyerror, etc),
|
||||
as well as gratuitiously global symbol names, so we can have multiple
|
||||
yacc generated parsers in gdb. Note that these are only the variables
|
||||
produced by yacc. If other parser generators (bison, byacc, etc) produce
|
||||
additional global names that conflict at link time, then those parser
|
||||
generators need to be fixed instead of adding those names to this list. */
|
||||
|
||||
#define yymaxdepth java_maxdepth
|
||||
#define yyparse java_parse_internal
|
||||
#define yylex java_lex
|
||||
#define yyerror java_error
|
||||
#define yylval java_lval
|
||||
#define yychar java_char
|
||||
#define yydebug java_debug
|
||||
#define yypact java_pact
|
||||
#define yyr1 java_r1
|
||||
#define yyr2 java_r2
|
||||
#define yydef java_def
|
||||
#define yychk java_chk
|
||||
#define yypgo java_pgo
|
||||
#define yyact java_act
|
||||
#define yyexca java_exca
|
||||
#define yyerrflag java_errflag
|
||||
#define yynerrs java_nerrs
|
||||
#define yyps java_ps
|
||||
#define yypv java_pv
|
||||
#define yys java_s
|
||||
#define yy_yys java_yys
|
||||
#define yystate java_state
|
||||
#define yytmp java_tmp
|
||||
#define yyv java_v
|
||||
#define yy_yyv java_yyv
|
||||
#define yyval java_val
|
||||
#define yylloc java_lloc
|
||||
#define yyreds java_reds /* With YYDEBUG defined */
|
||||
#define yytoks java_toks /* With YYDEBUG defined */
|
||||
#define yyname java_name /* With YYDEBUG defined */
|
||||
#define yyrule java_rule /* With YYDEBUG defined */
|
||||
#define yylhs java_yylhs
|
||||
#define yylen java_yylen
|
||||
#define yydefred java_yydefred
|
||||
#define yydgoto java_yydgoto
|
||||
#define yysindex java_yysindex
|
||||
#define yyrindex java_yyrindex
|
||||
#define yygindex java_yygindex
|
||||
#define yytable java_yytable
|
||||
#define yycheck java_yycheck
|
||||
#define yyss java_yyss
|
||||
#define yysslim java_yysslim
|
||||
#define yyssp java_yyssp
|
||||
#define yystacksize java_yystacksize
|
||||
#define yyvs java_yyvs
|
||||
#define yyvsp java_yyvsp
|
||||
|
||||
#ifndef YYDEBUG
|
||||
#define YYDEBUG 1 /* Default to yydebug support */
|
||||
#endif
|
||||
|
||||
#define YYFPRINTF parser_fprintf
|
||||
/* Remap normal yacc parser interface names (yyparse, yylex, yyerror,
|
||||
etc). */
|
||||
#define GDB_YY_REMAP_PREFIX java_
|
||||
#include "yy-remap.h"
|
||||
|
||||
/* The state of the parser, used internally when we are parsing the
|
||||
expression. */
|
||||
|
@ -1173,7 +1173,7 @@ const struct language_defn java_language_defn =
|
||||
macro_expansion_no,
|
||||
&exp_descriptor_java,
|
||||
java_parse,
|
||||
java_error,
|
||||
java_yyerror,
|
||||
null_post_parser,
|
||||
java_printchar, /* Print a character constant */
|
||||
java_printstr, /* Function to print string constant */
|
||||
|
@ -26,7 +26,7 @@ struct parser_state;
|
||||
|
||||
extern int java_parse (struct parser_state *); /* Defined in jv-exp.y */
|
||||
|
||||
extern void java_error (char *); /* Defined in jv-exp.y */
|
||||
extern void java_yyerror (char *); /* Defined in jv-exp.y */
|
||||
|
||||
struct builtin_java_type
|
||||
{
|
||||
|
63
gdb/m2-exp.y
63
gdb/m2-exp.y
@ -51,65 +51,10 @@
|
||||
#define parse_type(ps) builtin_type (parse_gdbarch (ps))
|
||||
#define parse_m2_type(ps) builtin_m2_type (parse_gdbarch (ps))
|
||||
|
||||
/* Remap normal yacc parser interface names (yyparse, yylex, yyerror, etc),
|
||||
as well as gratuitiously global symbol names, so we can have multiple
|
||||
yacc generated parsers in gdb. Note that these are only the variables
|
||||
produced by yacc. If other parser generators (bison, byacc, etc) produce
|
||||
additional global names that conflict at link time, then those parser
|
||||
generators need to be fixed instead of adding those names to this list. */
|
||||
|
||||
#define yymaxdepth m2_maxdepth
|
||||
#define yyparse m2_parse_internal
|
||||
#define yylex m2_lex
|
||||
#define yyerror m2_error
|
||||
#define yylval m2_lval
|
||||
#define yychar m2_char
|
||||
#define yydebug m2_debug
|
||||
#define yypact m2_pact
|
||||
#define yyr1 m2_r1
|
||||
#define yyr2 m2_r2
|
||||
#define yydef m2_def
|
||||
#define yychk m2_chk
|
||||
#define yypgo m2_pgo
|
||||
#define yyact m2_act
|
||||
#define yyexca m2_exca
|
||||
#define yyerrflag m2_errflag
|
||||
#define yynerrs m2_nerrs
|
||||
#define yyps m2_ps
|
||||
#define yypv m2_pv
|
||||
#define yys m2_s
|
||||
#define yy_yys m2_yys
|
||||
#define yystate m2_state
|
||||
#define yytmp m2_tmp
|
||||
#define yyv m2_v
|
||||
#define yy_yyv m2_yyv
|
||||
#define yyval m2_val
|
||||
#define yylloc m2_lloc
|
||||
#define yyreds m2_reds /* With YYDEBUG defined */
|
||||
#define yytoks m2_toks /* With YYDEBUG defined */
|
||||
#define yyname m2_name /* With YYDEBUG defined */
|
||||
#define yyrule m2_rule /* With YYDEBUG defined */
|
||||
#define yylhs m2_yylhs
|
||||
#define yylen m2_yylen
|
||||
#define yydefred m2_yydefred
|
||||
#define yydgoto m2_yydgoto
|
||||
#define yysindex m2_yysindex
|
||||
#define yyrindex m2_yyrindex
|
||||
#define yygindex m2_yygindex
|
||||
#define yytable m2_yytable
|
||||
#define yycheck m2_yycheck
|
||||
#define yyss m2_yyss
|
||||
#define yysslim m2_yysslim
|
||||
#define yyssp m2_yyssp
|
||||
#define yystacksize m2_yystacksize
|
||||
#define yyvs m2_yyvs
|
||||
#define yyvsp m2_yyvsp
|
||||
|
||||
#ifndef YYDEBUG
|
||||
#define YYDEBUG 1 /* Default to yydebug support */
|
||||
#endif
|
||||
|
||||
#define YYFPRINTF parser_fprintf
|
||||
/* Remap normal yacc parser interface names (yyparse, yylex, yyerror,
|
||||
etc). */
|
||||
#define GDB_YY_REMAP_PREFIX m2_
|
||||
#include "yy-remap.h"
|
||||
|
||||
/* The state of the parser, used internally when we are parsing the
|
||||
expression. */
|
||||
|
@ -365,7 +365,7 @@ const struct language_defn m2_language_defn =
|
||||
macro_expansion_no,
|
||||
&exp_descriptor_modula2,
|
||||
m2_parse, /* parser */
|
||||
m2_error, /* parser error function */
|
||||
m2_yyerror, /* parser error function */
|
||||
null_post_parser,
|
||||
m2_printchar, /* Print character constant */
|
||||
m2_printstr, /* function to print string constant */
|
||||
|
@ -22,7 +22,7 @@ struct parser_state;
|
||||
|
||||
extern int m2_parse (struct parser_state *); /* Defined in m2-exp.y */
|
||||
|
||||
extern void m2_error (char *); /* Defined in m2-exp.y */
|
||||
extern void m2_yyerror (char *); /* Defined in m2-exp.y */
|
||||
|
||||
/* Defined in m2-typeprint.c */
|
||||
extern void m2_print_type (struct type *, const char *, struct ui_file *, int,
|
||||
|
@ -360,7 +360,7 @@ const struct language_defn objc_language_defn = {
|
||||
macro_expansion_c,
|
||||
&exp_descriptor_standard,
|
||||
c_parse,
|
||||
c_error,
|
||||
c_yyerror,
|
||||
null_post_parser,
|
||||
c_printchar, /* Print a character constant */
|
||||
c_printstr, /* Function to print string constant */
|
||||
|
@ -1054,7 +1054,7 @@ const struct language_defn opencl_language_defn =
|
||||
macro_expansion_c,
|
||||
&exp_descriptor_opencl,
|
||||
c_parse,
|
||||
c_error,
|
||||
c_yyerror,
|
||||
null_post_parser,
|
||||
c_printchar, /* Print a character constant */
|
||||
c_printstr, /* Function to print string constant */
|
||||
|
63
gdb/p-exp.y
63
gdb/p-exp.y
@ -58,65 +58,10 @@
|
||||
|
||||
#define parse_type(ps) builtin_type (parse_gdbarch (ps))
|
||||
|
||||
/* Remap normal yacc parser interface names (yyparse, yylex, yyerror, etc),
|
||||
as well as gratuitiously global symbol names, so we can have multiple
|
||||
yacc generated parsers in gdb. Note that these are only the variables
|
||||
produced by yacc. If other parser generators (bison, byacc, etc) produce
|
||||
additional global names that conflict at link time, then those parser
|
||||
generators need to be fixed instead of adding those names to this list. */
|
||||
|
||||
#define yymaxdepth pascal_maxdepth
|
||||
#define yyparse pascal_parse_internal
|
||||
#define yylex pascal_lex
|
||||
#define yyerror pascal_error
|
||||
#define yylval pascal_lval
|
||||
#define yychar pascal_char
|
||||
#define yydebug pascal_debug
|
||||
#define yypact pascal_pact
|
||||
#define yyr1 pascal_r1
|
||||
#define yyr2 pascal_r2
|
||||
#define yydef pascal_def
|
||||
#define yychk pascal_chk
|
||||
#define yypgo pascal_pgo
|
||||
#define yyact pascal_act
|
||||
#define yyexca pascal_exca
|
||||
#define yyerrflag pascal_errflag
|
||||
#define yynerrs pascal_nerrs
|
||||
#define yyps pascal_ps
|
||||
#define yypv pascal_pv
|
||||
#define yys pascal_s
|
||||
#define yy_yys pascal_yys
|
||||
#define yystate pascal_state
|
||||
#define yytmp pascal_tmp
|
||||
#define yyv pascal_v
|
||||
#define yy_yyv pascal_yyv
|
||||
#define yyval pascal_val
|
||||
#define yylloc pascal_lloc
|
||||
#define yyreds pascal_reds /* With YYDEBUG defined */
|
||||
#define yytoks pascal_toks /* With YYDEBUG defined */
|
||||
#define yyname pascal_name /* With YYDEBUG defined */
|
||||
#define yyrule pascal_rule /* With YYDEBUG defined */
|
||||
#define yylhs pascal_yylhs
|
||||
#define yylen pascal_yylen
|
||||
#define yydefred pascal_yydefred
|
||||
#define yydgoto pascal_yydgoto
|
||||
#define yysindex pascal_yysindex
|
||||
#define yyrindex pascal_yyrindex
|
||||
#define yygindex pascal_yygindex
|
||||
#define yytable pascal_yytable
|
||||
#define yycheck pascal_yycheck
|
||||
#define yyss pascal_yyss
|
||||
#define yysslim pascal_yysslim
|
||||
#define yyssp pascal_yyssp
|
||||
#define yystacksize pascal_yystacksize
|
||||
#define yyvs pascal_yyvs
|
||||
#define yyvsp pascal_yyvsp
|
||||
|
||||
#ifndef YYDEBUG
|
||||
#define YYDEBUG 1 /* Default to yydebug support */
|
||||
#endif
|
||||
|
||||
#define YYFPRINTF parser_fprintf
|
||||
/* Remap normal yacc parser interface names (yyparse, yylex, yyerror,
|
||||
etc). */
|
||||
#define GDB_YY_REMAP_PREFIX pascal_
|
||||
#include "yy-remap.h"
|
||||
|
||||
/* The state of the parser, used internally when we are parsing the
|
||||
expression. */
|
||||
|
@ -423,7 +423,7 @@ const struct language_defn pascal_language_defn =
|
||||
macro_expansion_no,
|
||||
&exp_descriptor_standard,
|
||||
pascal_parse,
|
||||
pascal_error,
|
||||
pascal_yyerror,
|
||||
null_post_parser,
|
||||
pascal_printchar, /* Print a character constant */
|
||||
pascal_printstr, /* Function to print string constant */
|
||||
|
@ -27,7 +27,7 @@ extern const char *pascal_main_name (void);
|
||||
|
||||
extern int pascal_parse (struct parser_state *); /* Defined in p-exp.y */
|
||||
|
||||
extern void pascal_error (char *); /* Defined in p-exp.y */
|
||||
extern void pascal_yyerror (char *); /* Defined in p-exp.y */
|
||||
|
||||
/* Defined in p-typeprint.c */
|
||||
extern void pascal_print_type (struct type *, const char *, struct ui_file *,
|
||||
|
92
gdb/yy-remap.h
Normal file
92
gdb/yy-remap.h
Normal file
@ -0,0 +1,92 @@
|
||||
/* Copyright (C) 1986-2016 Free Software Foundation, Inc.
|
||||
|
||||
This file is part of GDB.
|
||||
|
||||
This program is free software; you can redistribute it and/or modify
|
||||
it under the terms of the GNU General Public License as published by
|
||||
the Free Software Foundation; either version 3 of the License, or
|
||||
(at your option) any later version.
|
||||
|
||||
This program is distributed in the hope that it will be useful,
|
||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
GNU General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU General Public License
|
||||
along with this program. If not, see <http://www.gnu.org/licenses/>. */
|
||||
|
||||
/* Remap normal yacc parser interface names (yyparse, yylex, yyerror,
|
||||
etc), as well as gratuitiously global symbol names, so we can have
|
||||
multiple yacc generated parsers in gdb. Note that these are only
|
||||
the variables produced by yacc. If other parser generators (bison,
|
||||
byacc, etc) produce additional global names that conflict at link
|
||||
time, then those parser generators need to be fixed instead of
|
||||
adding those names to this list. */
|
||||
|
||||
/* NOTE: This is clumsy since BISON and FLEX provide --prefix options.
|
||||
We are maintaining it to accommodate systems without BISON. */
|
||||
|
||||
/* Define GDB_YY_REMAP_PREFIX to the desired remapping prefix before
|
||||
including this file. */
|
||||
#ifndef GDB_YY_REMAP_PREFIX
|
||||
# error "GDB_YY_REMAP_PREFIX not defined"
|
||||
#endif
|
||||
|
||||
#define GDB_YY_REMAP_2(PREFIX, YYSYM) PREFIX ## YYSYM
|
||||
#define GDB_YY_REMAP_1(PREFIX, YYSYM) GDB_YY_REMAP_2 (PREFIX, YYSYM)
|
||||
#define GDB_YY_REMAP(YYSYM) GDB_YY_REMAP_1 (GDB_YY_REMAP_PREFIX, YYSYM)
|
||||
|
||||
#define yymaxdepth GDB_YY_REMAP (yymaxdepth)
|
||||
#define yyparse GDB_YY_REMAP (yyparse)
|
||||
#define yylex GDB_YY_REMAP (yylex)
|
||||
#define yyerror GDB_YY_REMAP (yyerror)
|
||||
#define yylval GDB_YY_REMAP (yylval)
|
||||
#define yychar GDB_YY_REMAP (yychar)
|
||||
#define yydebug GDB_YY_REMAP (yydebug)
|
||||
#define yypact GDB_YY_REMAP (yypact)
|
||||
#define yyr1 GDB_YY_REMAP (yyr1)
|
||||
#define yyr2 GDB_YY_REMAP (yyr2)
|
||||
#define yydef GDB_YY_REMAP (yydef)
|
||||
#define yychk GDB_YY_REMAP (yychk)
|
||||
#define yypgo GDB_YY_REMAP (yypgo)
|
||||
#define yyact GDB_YY_REMAP (yyact)
|
||||
#define yyexca GDB_YY_REMAP (yyexca)
|
||||
#define yyerrflag GDB_YY_REMAP (yyerrflag)
|
||||
#define yynerrs GDB_YY_REMAP (yynerrs)
|
||||
#define yyps GDB_YY_REMAP (yyps)
|
||||
#define yypv GDB_YY_REMAP (yypv)
|
||||
#define yys GDB_YY_REMAP (yys)
|
||||
#define yy_yys GDB_YY_REMAP (yy_yys)
|
||||
#define yystate GDB_YY_REMAP (yystate)
|
||||
#define yytmp GDB_YY_REMAP (yytmp)
|
||||
#define yyv GDB_YY_REMAP (yyv)
|
||||
#define yy_yyv GDB_YY_REMAP (yy_yyv)
|
||||
#define yyval GDB_YY_REMAP (yyval)
|
||||
#define yylloc GDB_YY_REMAP (yylloc)
|
||||
#define yyreds GDB_YY_REMAP (yyreds) /* With YYDEBUG defined */
|
||||
#define yytoks GDB_YY_REMAP (yytoks) /* With YYDEBUG defined */
|
||||
#define yyname GDB_YY_REMAP (yyname) /* With YYDEBUG defined */
|
||||
#define yyrule GDB_YY_REMAP (yyrule) /* With YYDEBUG defined */
|
||||
#define yylhs GDB_YY_REMAP (yylhs)
|
||||
#define yylen GDB_YY_REMAP (yylen)
|
||||
#define yydefred GDB_YY_REMAP (yydefred)
|
||||
#define yydgoto GDB_YY_REMAP (yydgoto)
|
||||
#define yysindex GDB_YY_REMAP (yysindex)
|
||||
#define yyrindex GDB_YY_REMAP (yyrindex)
|
||||
#define yygindex GDB_YY_REMAP (yygindex)
|
||||
#define yytable GDB_YY_REMAP (yytable)
|
||||
#define yycheck GDB_YY_REMAP (yycheck)
|
||||
#define yyss GDB_YY_REMAP (yyss)
|
||||
#define yysslim GDB_YY_REMAP (yysslim)
|
||||
#define yyssp GDB_YY_REMAP (yyssp)
|
||||
#define yystacksize GDB_YY_REMAP (yystacksize)
|
||||
#define yyvs GDB_YY_REMAP (yyvs)
|
||||
#define yyvsp GDB_YY_REMAP (yyvsp)
|
||||
|
||||
/* The following are common to all parsers. */
|
||||
|
||||
#ifndef YYDEBUG
|
||||
# define YYDEBUG 1 /* Default to yydebug support */
|
||||
#endif
|
||||
|
||||
#define YYFPRINTF parser_fprintf
|
Loading…
Reference in New Issue
Block a user