* Rename remote-es1800.c to remote-es.c
[deliverable/binutils-gdb.git] / gdb / m2-exp.y
index 2bee7380ae35edf5d295f972026a7b441b497181..449b13f4bb126e871fa2a1943976834460a945b0 100644 (file)
@@ -45,9 +45,13 @@ Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.  */
 #include "parser-defs.h"
 #include "m2-lang.h"
 
-/* These MUST be included in any grammar file!!!! Please choose unique names!
-   Note that this are a combined list of variables that can be produced
-   by any one of bison, byacc, or yacc. */
+/* 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
 #define        yylex   m2_lex
@@ -77,18 +81,13 @@ Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.  */
 #define        yylloc  m2_lloc
 #define yyreds m2_reds         /* With YYDEBUG defined */
 #define yytoks m2_toks         /* With YYDEBUG defined */
-#define yyss   m2_yyss         /* byacc */
-#define        yyssp   m2_yysp         /* byacc */
-#define        yyvs    m2_yyvs         /* byacc */
-#define        yyvsp   m2_yyvsp        /* byacc */
 
-#if 0
-static char *
-make_qualname PARAMS ((char *, char *));
+#ifndef YYDEBUG
+#define        YYDEBUG 0               /* Default to no yydebug support */
 #endif
 
-static int
-parse_number PARAMS ((int));
+int
+yyparse PARAMS ((void));
 
 static int
 yylex PARAMS ((void));
@@ -96,8 +95,13 @@ yylex PARAMS ((void));
 void
 yyerror PARAMS ((char *));
 
-int
-yyparse PARAMS ((void));
+#if 0
+static char *
+make_qualname PARAMS ((char *, char *));
+#endif
+
+static int
+parse_number PARAMS ((int));
 
 /* The sign of the number being parsed. */
 static int number_sign = 1;
@@ -108,10 +112,6 @@ static int number_sign = 1;
 static struct block *modblock=0;
 #endif
 
-#if MAINTENANCE_CMDS
-#define        YYDEBUG 1
-#endif
-
 %}
 
 /* Although the yacc "value" of an expression is not used,
@@ -333,9 +333,9 @@ exp     :       exp '['
                           function types */
                         { start_arglist(); }
                 non_empty_arglist ']'  %prec DOT
-                        { write_exp_elt_opcode (BINOP_MULTI_SUBSCRIPT);
+                        { write_exp_elt_opcode (MULTI_SUBSCRIPT);
                          write_exp_elt_longcst ((LONGEST) end_arglist());
-                         write_exp_elt_opcode (BINOP_MULTI_SUBSCRIPT); }
+                         write_exp_elt_opcode (MULTI_SUBSCRIPT); }
         ;
 
 exp    :       exp '('
@@ -617,6 +617,7 @@ variable:   NAME
                                case LOC_LABEL: /* maybe should go above? */
                                case LOC_BLOCK:
                                case LOC_CONST_BYTES:
+                               case LOC_OPTIMIZED_OUT:
                                  /* These are listed so gcc -Wall will reveal
                                     un-handled cases.  */
                                  break;
This page took 0.023608 seconds and 4 git commands to generate.