]> granicus.if.org Git - php/commitdiff
...
authorkrakjoe <joe.watkins@live.co.uk>
Fri, 21 Feb 2014 16:29:09 +0000 (16:29 +0000)
committerkrakjoe <joe.watkins@live.co.uk>
Fri, 21 Feb 2014 16:29:09 +0000 (16:29 +0000)
dev/phpdbg_lexer.l
dev/phpdbg_parser.y
phpdbg_cmd.c
phpdbg_cmd.h
phpdbg_lexer.c
phpdbg_lexer.h
phpdbg_parser.c
phpdbg_parser.h

index ae8eeb78319c8da73f26c33ca1670aa0c6b4c5ea..111df94104904354a841a833f1f1e05f79a49b3d 100644 (file)
@@ -35,7 +35,7 @@ T_IF                          ?i:"if"
 
 WS                     [ \r\n\t]+
 DIGITS                         [0-9\.]+
-ID                                     [^ \r\n\t:#~]+
+ID                                     [^ \r\n\t:#]+
 ADDR                           0x[a-fA-F0-9]+
 OPCODE                         ZEND_([A-Z])+
 LITERAL                                \"(\\.|[^\\"])*\"
@@ -46,7 +46,6 @@ INPUT                         [^\n]+
        [#]{1}          { return T_POUND;  }
        [:]{2}          { return T_DCOLON; }
        [:]{1}          { return T_COLON;  }
-       [~]{1}          { return T_SQUIGGLE; }
        {T_EVAL}                {
                BEGIN(RAW);
                phpdbg_init_param(yylval, EMPTY_PARAM);
index a811ba870db6ae6e0894e04443c71fc6e86370f8..8155f67043047270d2b96596cd7b720e2c0ea436 100644 (file)
@@ -57,7 +57,6 @@ typedef void* yyscan_t;
 %token T_TRUTHY                "truthy (true, on, yes or enabled)"
 %token T_FALSY         "falsy (false, off, no or disabled)"
 %token T_STRING                "string (some input, perhaps)"
-%token T_SQUIGGLE      "~ (squiggle)"
 %token T_COLON         ": (colon)"
 %token T_DCOLON                ":: (double colon)"
 %token T_POUND         "# (pound sign)"
@@ -82,11 +81,7 @@ parameters
        ;
 
 parameter
-       : T_SQUIGGLE T_DIGITS                                   {
-               $$.type = OPLINE_PARAM;
-               $$.num = $2.num; 
-       }
-       | T_ID T_COLON T_DIGITS                                 {       
+       : T_ID T_COLON T_DIGITS                                 {       
                $$.type = FILE_PARAM;
                $$.file.name = $1.str;
                $$.file.line = $3.num;
index 3974edb8d10b893e75291bbba67709ef957ff4ac..cbd769ff4b4c51957d9f82a4ebbb8fc618f2fa77 100644 (file)
@@ -446,10 +446,6 @@ PHPDBG_API void phpdbg_param_debug(const phpdbg_param_t *param, const char *msg)
                                fprintf(stderr, "%s OP_PARAM(%s=%lu)\n", msg, param->str, param->len);
                        break;
                        
-                       case OPLINE_PARAM:
-                               fprintf(stderr, "%s OPLINE_PARAM(%ld)\n", msg, param->num);
-                       break;
-                       
                        default: {
                                /* not yet */
                        }
@@ -580,7 +576,6 @@ PHPDBG_API int phpdbg_stack_verify(const phpdbg_command_t *command, phpdbg_param
                                case 'f': verify_arg("file:line", top, FILE_PARAM); break;
                                case 'c': verify_arg("condition", top, COND_PARAM); break;
                                case 'o': verify_arg("opcode", top, OP_PARAM); break;
-                               case 'O': verify_arg("opline", top, OPLINE_PARAM); break;
                                case 'b': verify_arg("boolean", top, NUMERIC_PARAM); break;
                                
                                case '*': { /* do nothing */ } break;
index d6cd19dfc1061db01beddd8c7dcf8cec9638a253..2834ee06d37a676853c8cccb832e5e3ac0fdfe3f 100644 (file)
@@ -44,7 +44,6 @@ typedef enum {
        SHELL_PARAM,
        COND_PARAM,
        OP_PARAM,
-       OPLINE_PARAM,
        ORIG_PARAM
 } phpdbg_param_type;
 
index 590d0825d7ab8fcf9aee6ed82e53bdc7e2cbcf93..9e6424ee08d4b45e90b458edff85fe6d91f329ee 100644 (file)
@@ -349,8 +349,8 @@ static void yy_fatal_error (yyconst char msg[] ,yyscan_t yyscanner );
        *yy_cp = '\0'; \
        yyg->yy_c_buf_p = yy_cp;
 
-#define YY_NUM_RULES 17
-#define YY_END_OF_BUFFER 18
+#define YY_NUM_RULES 16
+#define YY_END_OF_BUFFER 17
 /* This struct is not used in this scanner,
    but its presence is necessary. */
 struct yy_trans_info
@@ -358,16 +358,16 @@ struct yy_trans_info
        flex_int32_t yy_verify;
        flex_int32_t yy_nxt;
        };
-static yyconst flex_int16_t yy_accept[80] =
+static yyconst flex_int16_t yy_accept[79] =
     {   0,
-        0,    0,    0,    0,   18,   14,   16,   14,    1,   10,
-       10,    3,   14,   14,   14,   14,   14,   14,   14,   14,
-       14,   14,    4,   15,   15,   14,   16,   14,    0,   13,
-       14,   10,   14,    2,   14,   14,   14,   14,    7,    9,
-       14,    8,   14,   14,   14,   14,   15,   15,   13,    0,
-       11,   14,   14,   14,   14,    9,   14,   14,    8,   14,
-       14,   14,    5,   14,   14,    8,   14,   14,   14,    9,
-        6,   14,   14,   14,   12,   14,    8,    9,    0
+        0,    0,    0,    0,   17,   13,   15,   13,    1,    9,
+        9,    3,   13,   13,   13,   13,   13,   13,   13,   13,
+       13,   13,   14,   14,   13,   15,   13,    0,   12,   13,
+        9,   13,    2,   13,   13,   13,   13,    6,    8,   13,
+        7,   13,   13,   13,   13,   14,   14,   12,    0,   10,
+       13,   13,   13,   13,    8,   13,   13,    7,   13,   13,
+       13,    4,   13,   13,    7,   13,   13,   13,    8,    5,
+       13,   13,   13,   11,   13,    7,    8,    0
     } ;
 
 static yyconst flex_int32_t yy_ec[256] =
@@ -385,7 +385,7 @@ static yyconst flex_int32_t yy_ec[256] =
 
        35,   36,    1,   37,   38,    1,    1,   39,    1,   40,
        41,    1,    1,   42,   43,   44,   45,   46,    1,   47,
-       48,    1,    1,    1,    1,   49,    1,    1,    1,    1,
+       48,    1,    1,    1,    1,    1,    1,    1,    1,    1,
         1,    1,    1,    1,    1,    1,    1,    1,    1,    1,
         1,    1,    1,    1,    1,    1,    1,    1,    1,    1,
         1,    1,    1,    1,    1,    1,    1,    1,    1,    1,
@@ -402,113 +402,109 @@ static yyconst flex_int32_t yy_ec[256] =
         1,    1,    1,    1,    1
     } ;
 
-static yyconst flex_int32_t yy_meta[50] =
+static yyconst flex_int32_t yy_meta[49] =
     {   0,
         1,    2,    3,    1,    2,    1,    1,    1,    2,    1,
         1,    1,    1,    1,    1,    1,    1,    1,    1,    1,
         1,    1,    1,    1,    1,    1,    1,    1,    1,    1,
         1,    1,    1,    1,    1,    1,    1,    1,    1,    1,
-        1,    1,    1,    1,    1,    1,    1,    1,    2
+        1,    1,    1,    1,    1,    1,    1,    1
     } ;
 
-static yyconst flex_int16_t yy_base[85] =
+static yyconst flex_int16_t yy_base[84] =
     {   0,
-        0,    0,   48,   50,  139,    0,   52,   54,  246,   54,
-       58,  129,   49,   48,   59,   55,   51,   60,   56,   55,
-       64,  123,  246,    0,   79,    0,   82,  104,   72,    0,
-      109,  109,  152,  246,   79,   79,   88,   85,    0,    0,
-      105,    0,  107,   98,  102,  110,    0,  124,  246,   92,
-        0,  118,  118,  112,  109,    0,  115,  121,    0,   73,
-      125,  129,    0,  126,  136,    0,   49,  150,  156,    0,
-        0,  182,  176,  199,    0,  200,    0,    0,  246,  234,
-       70,  237,  240,  242
+        0,    0,   47,   49,  163,    0,   51,   53,  238,   53,
+       57,  140,   48,   47,   58,   54,   50,   59,   55,   54,
+       63,  107,    0,   78,    0,   81,   98,   81,    0,  103,
+      107,  121,  238,   74,   78,  106,   99,    0,    0,  104,
+        0,  106,   97,  100,   91,    0,  122,  238,   91,    0,
+      116,  119,  120,  121,    0,  126,  132,    0,   65,  137,
+      131,    0,  144,  141,    0,   45,  142,  148,    0,    0,
+      174,  168,  191,    0,  192,    0,    0,  238,  226,   69,
+      229,  232,  234
     } ;
 
-static yyconst flex_int16_t yy_def[85] =
+static yyconst flex_int16_t yy_def[84] =
     {   0,
-       79,    1,   80,   80,   79,   81,   79,   82,   79,   81,
-       81,   79,   81,   81,   81,   81,   81,   81,   81,   81,
-       81,   81,   79,   83,   83,   81,   79,   82,   84,   81,
-       82,   81,   81,   79,   81,   81,   81,   81,   81,   81,
-       81,   81,   81,   81,   81,   81,   83,   83,   79,   84,
-       33,   81,   81,   81,   81,   81,   81,   81,   81,   81,
-       81,   81,   81,   81,   81,   81,   81,   81,   81,   81,
-       81,   81,   81,   81,   72,   81,   81,   81,    0,   79,
-       79,   79,   79,   79
+       78,    1,   79,   79,   78,   80,   78,   81,   78,   80,
+       80,   78,   80,   80,   80,   80,   80,   80,   80,   80,
+       80,   80,   82,   82,   80,   78,   81,   83,   80,   81,
+       80,   80,   78,   80,   80,   80,   80,   80,   80,   80,
+       80,   80,   80,   80,   80,   82,   82,   78,   83,   32,
+       80,   80,   80,   80,   80,   80,   80,   80,   80,   80,
+       80,   80,   80,   80,   80,   80,   80,   80,   80,   80,
+       80,   80,   80,   71,   80,   80,   80,    0,   78,   78,
+       78,   78,   78
     } ;
 
-static yyconst flex_int16_t yy_nxt[296] =
+static yyconst flex_int16_t yy_nxt[287] =
     {   0,
         6,    7,    7,    8,    9,   10,   11,   10,   12,    6,
         6,    6,   13,   14,   15,    6,    6,   16,    6,   17,
        18,    6,   19,   20,    6,    6,   21,   22,    6,    6,
         6,    6,    6,   13,   14,   15,    6,   16,    6,   17,
-       18,    6,   19,   20,    6,    6,    6,   21,   23,   25,
-        7,   25,    7,   27,   27,   29,   29,   30,   29,   32,
-       32,   32,   29,   32,   32,   32,   35,   36,   38,   39,
-       26,   40,   43,   37,   41,   49,   44,   45,   72,   42,
-       48,   27,   31,   27,   27,   67,   35,   36,   53,   38,
-       39,   40,   43,   37,   79,   41,   44,   54,   45,   42,
-
-       50,   52,   29,   55,   33,   29,   29,   30,   29,   53,
-       29,   79,   29,   29,   32,   32,   32,   29,   54,   56,
-       57,   52,   58,   55,   59,   48,   27,   61,   62,   60,
-       63,   64,   31,   65,   66,   68,   46,   34,   79,   70,
-       56,   57,   58,   79,   59,   79,   79,   69,   61,   62,
-       63,   64,   29,   65,   71,   66,   68,   29,   51,   51,
-       70,   51,   51,   51,   51,   51,   51,   69,   73,   74,
-       79,   79,   79,   79,   71,   79,   79,   79,   79,   79,
-       79,   79,   51,   51,   51,   51,   51,   51,   73,   76,
-       74,   75,   75,   75,   75,   75,   75,   75,   75,   75,
-
-       75,   75,   75,   75,   75,   75,   75,   75,   75,   75,
-       76,   77,   78,   79,   79,   79,   79,   79,   79,   79,
-       79,   79,   79,   79,   79,   79,   79,   79,   79,   79,
-       79,   79,   77,   78,   24,   24,   24,   28,   28,   28,
-       47,   47,   29,   29,   29,    5,   79,   79,   79,   79,
-       79,   79,   79,   79,   79,   79,   79,   79,   79,   79,
-       79,   79,   79,   79,   79,   79,   79,   79,   79,   79,
-       79,   79,   79,   79,   79,   79,   79,   79,   79,   79,
-       79,   79,   79,   79,   79,   79,   79,   79,   79,   79,
-       79,   79,   79,   79,   79
-
+       18,    6,   19,   20,    6,    6,    6,   21,   24,    7,
+       24,    7,   26,   26,   28,   28,   29,   28,   31,   31,
+       31,   28,   31,   31,   31,   34,   35,   37,   38,   25,
+       39,   42,   36,   40,   71,   43,   44,   66,   41,   47,
+       26,   30,   26,   26,   48,   34,   35,   52,   37,   38,
+       39,   42,   36,   78,   40,   43,   51,   44,   41,   28,
+
+       28,   29,   28,   32,   28,   78,   28,   28,   52,   49,
+       59,   28,   31,   31,   31,   53,   51,   54,   55,   56,
+       45,   57,   58,   47,   26,   60,   30,   50,   50,   61,
+       50,   50,   50,   50,   50,   50,   53,   54,   62,   55,
+       56,   57,   58,   63,   64,   65,   60,   67,   33,   68,
+       61,   50,   50,   50,   50,   50,   50,   69,   62,   70,
+       72,   73,   78,   63,   64,   78,   65,   78,   67,   68,
+       78,   78,   78,   78,   78,   78,   78,   78,   69,   70,
+       72,   75,   73,   74,   74,   74,   74,   74,   74,   74,
+       74,   74,   74,   74,   74,   74,   74,   74,   74,   74,
+
+       74,   74,   75,   76,   77,   78,   78,   78,   78,   78,
+       78,   78,   78,   78,   78,   78,   78,   78,   78,   78,
+       78,   78,   78,   78,   76,   77,   23,   23,   23,   27,
+       27,   27,   46,   46,   28,   28,   28,    5,   78,   78,
+       78,   78,   78,   78,   78,   78,   78,   78,   78,   78,
+       78,   78,   78,   78,   78,   78,   78,   78,   78,   78,
+       78,   78,   78,   78,   78,   78,   78,   78,   78,   78,
+       78,   78,   78,   78,   78,   78,   78,   78,   78,   78,
+       78,   78,   78,   78,   78,   78
     } ;
 
-static yyconst flex_int16_t yy_chk[296] =
+static yyconst flex_int16_t yy_chk[287] =
     {   0,
         1,    1,    1,    1,    1,    1,    1,    1,    1,    1,
         1,    1,    1,    1,    1,    1,    1,    1,    1,    1,
         1,    1,    1,    1,    1,    1,    1,    1,    1,    1,
         1,    1,    1,    1,    1,    1,    1,    1,    1,    1,
-        1,    1,    1,    1,    1,    1,    1,    1,    1,    3,
-        3,    4,    4,    7,    7,    8,    8,    8,    8,   10,
-       10,   10,    8,   11,   11,   11,   13,   14,   15,   16,
-       81,   17,   19,   14,   18,   29,   20,   21,   67,   18,
-       25,   25,    8,   27,   27,   60,   13,   14,   36,   15,
-       16,   17,   19,   14,   50,   18,   20,   37,   21,   18,
-
-       29,   35,    8,   38,   11,   28,   28,   28,   28,   36,
-       31,   31,   28,   31,   32,   32,   32,   31,   37,   41,
-       43,   35,   44,   38,   45,   48,   48,   52,   53,   46,
-       54,   55,   28,   57,   58,   61,   22,   12,    5,   64,
-       41,   43,   44,    0,   45,    0,    0,   62,   52,   53,
-       54,   55,   28,   57,   65,   58,   61,   31,   33,   33,
-       64,   33,   33,   33,   33,   33,   33,   62,   68,   69,
-        0,    0,    0,    0,   65,    0,    0,    0,    0,    0,
-        0,    0,   33,   33,   33,   33,   33,   33,   68,   73,
-       69,   72,   72,   72,   72,   72,   72,   72,   72,   72,
-
-       72,   72,   72,   72,   72,   72,   72,   72,   72,   72,
-       73,   74,   76,    0,    0,    0,    0,    0,    0,    0,
+        1,    1,    1,    1,    1,    1,    1,    1,    3,    3,
+        4,    4,    7,    7,    8,    8,    8,    8,   10,   10,
+       10,    8,   11,   11,   11,   13,   14,   15,   16,   80,
+       17,   19,   14,   18,   66,   20,   21,   59,   18,   24,
+       24,    8,   26,   26,   28,   13,   14,   35,   15,   16,
+       17,   19,   14,   49,   18,   20,   34,   21,   18,   27,
+
+       27,   27,   27,   11,   30,   30,   27,   30,   35,   28,
+       45,   30,   31,   31,   31,   36,   34,   37,   40,   42,
+       22,   43,   44,   47,   47,   51,   27,   32,   32,   52,
+       32,   32,   32,   32,   32,   32,   36,   37,   53,   40,
+       42,   43,   44,   54,   56,   57,   51,   60,   12,   61,
+       52,   32,   32,   32,   32,   32,   32,   63,   53,   64,
+       67,   68,    5,   54,   56,    0,   57,    0,   60,   61,
+        0,    0,    0,    0,    0,    0,    0,    0,   63,   64,
+       67,   72,   68,   71,   71,   71,   71,   71,   71,   71,
+       71,   71,   71,   71,   71,   71,   71,   71,   71,   71,
+
+       71,   71,   72,   73,   75,    0,    0,    0,    0,    0,
         0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
-        0,    0,   74,   76,   80,   80,   80,   82,   82,   82,
-       83,   83,   84,   84,   84,   79,   79,   79,   79,   79,
-       79,   79,   79,   79,   79,   79,   79,   79,   79,   79,
-       79,   79,   79,   79,   79,   79,   79,   79,   79,   79,
-       79,   79,   79,   79,   79,   79,   79,   79,   79,   79,
-       79,   79,   79,   79,   79,   79,   79,   79,   79,   79,
-       79,   79,   79,   79,   79
-
+        0,    0,    0,    0,   73,   75,   79,   79,   79,   81,
+       81,   81,   82,   82,   83,   83,   83,   78,   78,   78,
+       78,   78,   78,   78,   78,   78,   78,   78,   78,   78,
+       78,   78,   78,   78,   78,   78,   78,   78,   78,   78,
+       78,   78,   78,   78,   78,   78,   78,   78,   78,   78,
+       78,   78,   78,   78,   78,   78,   78,   78,   78,   78,
+       78,   78,   78,   78,   78,   78
     } ;
 
 /* The intent behind this definition is that it'll catch
@@ -534,7 +530,7 @@ static yyconst flex_int16_t yy_chk[296] =
 #include <string.h>
 
 #define YY_NO_UNISTD_H 1
-#line 538 "sapi/phpdbg/phpdbg_lexer.c"
+#line 534 "sapi/phpdbg/phpdbg_lexer.c"
 
 #define INITIAL 0
 #define RAW 1
@@ -774,7 +770,7 @@ YY_DECL
 
 #line 43 "sapi/phpdbg/dev/phpdbg_lexer.l"
 
-#line 778 "sapi/phpdbg/phpdbg_lexer.c"
+#line 774 "sapi/phpdbg/phpdbg_lexer.c"
 
     yylval = yylval_param;
 
@@ -829,13 +825,13 @@ yy_match:
                        while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state )
                                {
                                yy_current_state = (int) yy_def[yy_current_state];
-                               if ( yy_current_state >= 80 )
+                               if ( yy_current_state >= 79 )
                                        yy_c = yy_meta[(unsigned int) yy_c];
                                }
                        yy_current_state = yy_nxt[yy_base[yy_current_state] + (unsigned int) yy_c];
                        ++yy_cp;
                        }
-               while ( yy_current_state != 79 );
+               while ( yy_current_state != 78 );
                yy_cp = yyg->yy_last_accepting_cpos;
                yy_current_state = yyg->yy_last_accepting_state;
 
@@ -873,74 +869,69 @@ YY_RULE_SETUP
 case 4:
 YY_RULE_SETUP
 #line 49 "sapi/phpdbg/dev/phpdbg_lexer.l"
-{ return T_SQUIGGLE; }
-       YY_BREAK
-case 5:
-YY_RULE_SETUP
-#line 50 "sapi/phpdbg/dev/phpdbg_lexer.l"
 {
                BEGIN(RAW);
                phpdbg_init_param(yylval, EMPTY_PARAM);
                return T_EVAL;
        }
        YY_BREAK
-case 6:
+case 5:
 YY_RULE_SETUP
-#line 55 "sapi/phpdbg/dev/phpdbg_lexer.l"
+#line 54 "sapi/phpdbg/dev/phpdbg_lexer.l"
 {
                BEGIN(RAW);
                phpdbg_init_param(yylval, EMPTY_PARAM);
                return T_SHELL;
        }
        YY_BREAK
-case 7:
+case 6:
 YY_RULE_SETUP
-#line 60 "sapi/phpdbg/dev/phpdbg_lexer.l"
+#line 59 "sapi/phpdbg/dev/phpdbg_lexer.l"
 {
                BEGIN(RAW);
                phpdbg_init_param(yylval, EMPTY_PARAM);
                return T_IF;
        }
        YY_BREAK
-case 8:
+case 7:
 YY_RULE_SETUP
-#line 65 "sapi/phpdbg/dev/phpdbg_lexer.l"
+#line 64 "sapi/phpdbg/dev/phpdbg_lexer.l"
 {
                phpdbg_init_param(yylval, NUMERIC_PARAM);
                yylval->num = 1;                
                return T_TRUTHY;
        }
        YY_BREAK
-case 9:
+case 8:
 YY_RULE_SETUP
-#line 70 "sapi/phpdbg/dev/phpdbg_lexer.l"
+#line 69 "sapi/phpdbg/dev/phpdbg_lexer.l"
 {
                phpdbg_init_param(yylval, NUMERIC_PARAM);
                yylval->num = 0;
                return T_FALSY;
        }
        YY_BREAK
-case 10:
+case 9:
 YY_RULE_SETUP
-#line 75 "sapi/phpdbg/dev/phpdbg_lexer.l"
+#line 74 "sapi/phpdbg/dev/phpdbg_lexer.l"
 {
                phpdbg_init_param(yylval, NUMERIC_PARAM);
                yylval->num = atoi(yytext);
                return T_DIGITS;
        }
        YY_BREAK
-case 11:
+case 10:
 YY_RULE_SETUP
-#line 80 "sapi/phpdbg/dev/phpdbg_lexer.l"
+#line 79 "sapi/phpdbg/dev/phpdbg_lexer.l"
 {
                phpdbg_init_param(yylval, ADDR_PARAM);
                yylval->addr = strtoul(yytext, NULL, 10);
                return T_ADDR; 
        }
        YY_BREAK
-case 12:
+case 11:
 YY_RULE_SETUP
-#line 85 "sapi/phpdbg/dev/phpdbg_lexer.l"
+#line 84 "sapi/phpdbg/dev/phpdbg_lexer.l"
 {
                phpdbg_init_param(yylval, OP_PARAM);
                yylval->str = strndup(yytext, yyleng);
@@ -948,10 +939,10 @@ YY_RULE_SETUP
                return T_OPCODE;
        }
        YY_BREAK
-case 13:
-/* rule 13 can match eol */
+case 12:
+/* rule 12 can match eol */
 YY_RULE_SETUP
-#line 91 "sapi/phpdbg/dev/phpdbg_lexer.l"
+#line 90 "sapi/phpdbg/dev/phpdbg_lexer.l"
 {
                phpdbg_init_param(yylval, STR_PARAM);
                yylval->str = strndup(yytext, yyleng);
@@ -959,9 +950,9 @@ YY_RULE_SETUP
                return T_LITERAL; 
        }
        YY_BREAK
-case 14:
+case 13:
 YY_RULE_SETUP
-#line 97 "sapi/phpdbg/dev/phpdbg_lexer.l"
+#line 96 "sapi/phpdbg/dev/phpdbg_lexer.l"
 {
                phpdbg_init_param(yylval, STR_PARAM);
                yylval->str = strndup(yytext, yyleng);
@@ -970,9 +961,9 @@ YY_RULE_SETUP
        }
        YY_BREAK
 
-case 15:
+case 14:
 YY_RULE_SETUP
-#line 104 "sapi/phpdbg/dev/phpdbg_lexer.l"
+#line 103 "sapi/phpdbg/dev/phpdbg_lexer.l"
 {
        phpdbg_init_param(yylval, STR_PARAM);
        yylval->str = strndup(yytext, yyleng);
@@ -981,18 +972,18 @@ YY_RULE_SETUP
        return T_INPUT;
 }
        YY_BREAK
-case 16:
-/* rule 16 can match eol */
+case 15:
+/* rule 15 can match eol */
 YY_RULE_SETUP
-#line 111 "sapi/phpdbg/dev/phpdbg_lexer.l"
+#line 110 "sapi/phpdbg/dev/phpdbg_lexer.l"
 { /* ignore whitespace */ }
        YY_BREAK
-case 17:
+case 16:
 YY_RULE_SETUP
-#line 112 "sapi/phpdbg/dev/phpdbg_lexer.l"
+#line 111 "sapi/phpdbg/dev/phpdbg_lexer.l"
 YY_FATAL_ERROR( "flex scanner jammed" );
        YY_BREAK
-#line 996 "sapi/phpdbg/phpdbg_lexer.c"
+#line 987 "sapi/phpdbg/phpdbg_lexer.c"
 case YY_STATE_EOF(INITIAL):
 case YY_STATE_EOF(RAW):
        yyterminate();
@@ -1288,7 +1279,7 @@ static int yy_get_next_buffer (yyscan_t yyscanner)
                while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state )
                        {
                        yy_current_state = (int) yy_def[yy_current_state];
-                       if ( yy_current_state >= 80 )
+                       if ( yy_current_state >= 79 )
                                yy_c = yy_meta[(unsigned int) yy_c];
                        }
                yy_current_state = yy_nxt[yy_base[yy_current_state] + (unsigned int) yy_c];
@@ -1317,11 +1308,11 @@ static int yy_get_next_buffer (yyscan_t yyscanner)
        while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state )
                {
                yy_current_state = (int) yy_def[yy_current_state];
-               if ( yy_current_state >= 80 )
+               if ( yy_current_state >= 79 )
                        yy_c = yy_meta[(unsigned int) yy_c];
                }
        yy_current_state = yy_nxt[yy_base[yy_current_state] + (unsigned int) yy_c];
-       yy_is_jam = (yy_current_state == 79);
+       yy_is_jam = (yy_current_state == 78);
 
        return yy_is_jam ? 0 : yy_current_state;
 }
@@ -2157,7 +2148,7 @@ void yyfree (void * ptr , yyscan_t yyscanner)
 
 #define YYTABLES_NAME "yytables"
 
-#line 112 "sapi/phpdbg/dev/phpdbg_lexer.l"
+#line 111 "sapi/phpdbg/dev/phpdbg_lexer.l"
 
 
 
index 0395393613cfe3c21ce05d2872adba4d9271f51e..204ecb6c94778694389cede7975ea786adde526c 100644 (file)
@@ -338,7 +338,7 @@ extern int yylex \
 #undef YY_DECL
 #endif
 
-#line 112 "sapi/phpdbg/dev/phpdbg_lexer.l"
+#line 111 "sapi/phpdbg/dev/phpdbg_lexer.l"
 
 
 #line 345 "sapi/phpdbg/phpdbg_lexer.h"
index c252c7ab9d789fd109a1baf379b71a35b7557160..599758f44f8d23cd69c3269c21850ac480c5de1e 100644 (file)
@@ -153,17 +153,16 @@ typedef void* yyscan_t;
      T_TRUTHY = 261,
      T_FALSY = 262,
      T_STRING = 263,
-     T_SQUIGGLE = 264,
-     T_COLON = 265,
-     T_DCOLON = 266,
-     T_POUND = 267,
-     T_DIGITS = 268,
-     T_LITERAL = 269,
-     T_ADDR = 270,
-     T_OPCODE = 271,
-     T_ID = 272,
-     T_INPUT = 273,
-     T_UNEXPECTED = 274
+     T_COLON = 264,
+     T_DCOLON = 265,
+     T_POUND = 266,
+     T_DIGITS = 267,
+     T_LITERAL = 268,
+     T_ADDR = 269,
+     T_OPCODE = 270,
+     T_ID = 271,
+     T_INPUT = 272,
+     T_UNEXPECTED = 273
    };
 #endif
 
@@ -181,7 +180,7 @@ typedef int YYSTYPE;
 
 
 /* Line 343 of yacc.c  */
-#line 185 "sapi/phpdbg/phpdbg_parser.c"
+#line 184 "sapi/phpdbg/phpdbg_parser.c"
 
 #ifdef short
 # undef short
@@ -398,22 +397,22 @@ union yyalloc
 #endif /* !YYCOPY_NEEDED */
 
 /* YYFINAL -- State number of the termination state.  */
-#define YYFINAL  22
+#define YYFINAL  20
 /* YYLAST -- Last index in YYTABLE.  */
-#define YYLAST   25
+#define YYLAST   23
 
 /* YYNTOKENS -- Number of terminals.  */
-#define YYNTOKENS  20
+#define YYNTOKENS  19
 /* YYNNTS -- Number of nonterminals.  */
 #define YYNNTS  4
 /* YYNRULES -- Number of rules.  */
-#define YYNRULES  20
+#define YYNRULES  19
 /* YYNRULES -- Number of states.  */
-#define YYNSTATES  29
+#define YYNSTATES  27
 
 /* YYTRANSLATE(YYLEX) -- Bison symbol number corresponding to YYLEX.  */
 #define YYUNDEFTOK  2
-#define YYMAXUTOK   274
+#define YYMAXUTOK   273
 
 #define YYTRANSLATE(YYX)                                               \
   ((unsigned int) (YYX) <= YYMAXUTOK ? yytranslate[YYX] : YYUNDEFTOK)
@@ -448,7 +447,7 @@ static const yytype_uint8 yytranslate[] =
        2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
        2,     2,     2,     2,     2,     2,     1,     2,     3,     4,
        5,     6,     7,     8,     9,    10,    11,    12,    13,    14,
-      15,    16,    17,    18,    19
+      15,    16,    17,    18
 };
 
 #if YYDEBUG
@@ -456,28 +455,26 @@ static const yytype_uint8 yytranslate[] =
    YYRHS.  */
 static const yytype_uint8 yyprhs[] =
 {
-       0,     0,     3,     5,     6,     8,    11,    14,    18,    22,
-      28,    32,    35,    38,    41,    43,    45,    47,    49,    51,
-      53
+       0,     0,     3,     5,     6,     8,    11,    15,    19,    25,
+      29,    32,    35,    38,    40,    42,    44,    46,    48,    50
 };
 
 /* YYRHS -- A `-1'-separated list of the rules' RHS.  */
 static const yytype_int8 yyrhs[] =
 {
-      21,     0,    -1,    22,    -1,    -1,    23,    -1,    22,    23,
-      -1,     9,    13,    -1,    17,    10,    13,    -1,    17,    11,
-      17,    -1,    17,    11,    17,    12,    13,    -1,    17,    12,
-      13,    -1,     5,    18,    -1,     3,    18,    -1,     4,    18,
-      -1,    16,    -1,    15,    -1,    14,    -1,     6,    -1,     7,
-      -1,    13,    -1,    17,    -1
+      20,     0,    -1,    21,    -1,    -1,    22,    -1,    21,    22,
+      -1,    16,     9,    12,    -1,    16,    10,    16,    -1,    16,
+      10,    16,    11,    12,    -1,    16,    11,    12,    -1,     5,
+      17,    -1,     3,    17,    -1,     4,    17,    -1,    15,    -1,
+      14,    -1,    13,    -1,     6,    -1,     7,    -1,    12,    -1,
+      16,    -1
 };
 
 /* YYRLINE[YYN] -- source line where rule number YYN was defined.  */
 static const yytype_uint8 yyrline[] =
 {
-       0,    75,    75,    76,    80,    81,    85,    89,    94,    99,
-     105,   111,   116,   121,   126,   127,   128,   129,   130,   131,
-     132
+       0,    74,    74,    75,    79,    80,    84,    89,    94,   100,
+     106,   111,   116,   121,   122,   123,   124,   125,   126,   127
 };
 #endif
 
@@ -489,7 +486,7 @@ static const char *const yytname[] =
   "$end", "error", "$undefined", "\"eval\"", "\"shell\"",
   "\"if (condition)\"", "\"truthy (true, on, yes or enabled)\"",
   "\"falsy (false, off, no or disabled)\"",
-  "\"string (some input, perhaps)\"", "\"~ (squiggle)\"", "\": (colon)\"",
+  "\"string (some input, perhaps)\"", "\": (colon)\"",
   "\":: (double colon)\"", "\"# (pound sign)\"", "\"digits (numbers)\"",
   "\"literal (string)\"", "\"address\"", "\"opcode\"",
   "\"identifier (command or function name)\"",
@@ -504,24 +501,22 @@ static const char *const yytname[] =
 static const yytype_uint16 yytoknum[] =
 {
        0,   256,   257,   258,   259,   260,   261,   262,   263,   264,
-     265,   266,   267,   268,   269,   270,   271,   272,   273,   274
+     265,   266,   267,   268,   269,   270,   271,   272,   273
 };
 # endif
 
 /* YYR1[YYN] -- Symbol number of symbol that rule YYN derives.  */
 static const yytype_uint8 yyr1[] =
 {
-       0,    20,    21,    21,    22,    22,    23,    23,    23,    23,
-      23,    23,    23,    23,    23,    23,    23,    23,    23,    23,
-      23
+       0,    19,    20,    20,    21,    21,    22,    22,    22,    22,
+      22,    22,    22,    22,    22,    22,    22,    22,    22,    22
 };
 
 /* YYR2[YYN] -- Number of symbols composing right hand side of rule YYN.  */
 static const yytype_uint8 yyr2[] =
 {
-       0,     2,     1,     0,     1,     2,     2,     3,     3,     5,
-       3,     2,     2,     2,     1,     1,     1,     1,     1,     1,
-       1
+       0,     2,     1,     0,     1,     2,     3,     3,     5,     3,
+       2,     2,     2,     1,     1,     1,     1,     1,     1,     1
 };
 
 /* YYDEFACT[STATE-NAME] -- Default reduction number in state STATE-NUM.
@@ -529,31 +524,31 @@ static const yytype_uint8 yyr2[] =
    means the default is an error.  */
 static const yytype_uint8 yydefact[] =
 {
-       3,     0,     0,     0,    17,    18,     0,    19,    16,    15,
-      14,    20,     0,     2,     4,    12,    13,    11,     6,     0,
-       0,     0,     1,     5,     7,     8,    10,     0,     9
+       3,     0,     0,     0,    16,    17,    18,    15,    14,    13,
+      19,     0,     2,     4,    11,    12,    10,     0,     0,     0,
+       1,     5,     6,     7,     9,     0,     8
 };
 
 /* YYDEFGOTO[NTERM-NUM].  */
 static const yytype_int8 yydefgoto[] =
 {
-      -1,    12,    13,    14
+      -1,    11,    12,    13
 };
 
 /* YYPACT[STATE-NUM] -- Index in YYTABLE of the portion describing
    STATE-NUM.  */
-#define YYPACT_NINF -14
+#define YYPACT_NINF -10
 static const yytype_int8 yypact[] =
 {
-      -3,   -13,   -11,   -10,   -14,   -14,    -4,   -14,   -14,   -14,
-     -14,     5,    18,    -3,   -14,   -14,   -14,   -14,   -14,     6,
-       3,     8,   -14,   -14,   -14,    10,   -14,    11,   -14
+      -3,    -9,    -2,    -1,   -10,   -10,   -10,   -10,   -10,   -10,
+      -4,    14,    -3,   -10,   -10,   -10,   -10,     5,     2,     7,
+     -10,   -10,   -10,     9,   -10,    10,   -10
 };
 
 /* YYPGOTO[NTERM-NUM].  */
 static const yytype_int8 yypgoto[] =
 {
-     -14,   -14,   -14,    12
+     -10,   -10,   -10,    11
 };
 
 /* YYTABLE[YYPACT[STATE-NUM]].  What to do in state STATE-NUM.  If
@@ -562,31 +557,31 @@ static const yytype_int8 yypgoto[] =
 #define YYTABLE_NINF -1
 static const yytype_uint8 yytable[] =
 {
-       1,     2,     3,     4,     5,    15,     6,    16,    17,    18,
-       7,     8,     9,    10,    11,    19,    20,    21,    22,    24,
-      25,    26,    27,     0,    28,    23
+       1,     2,     3,     4,     5,    17,    18,    19,    14,     6,
+       7,     8,     9,    10,    20,    15,    16,    22,    23,    24,
+      25,     0,    26,    21
 };
 
 #define yypact_value_is_default(yystate) \
-  ((yystate) == (-14))
+  ((yystate) == (-10))
 
 #define yytable_value_is_error(yytable_value) \
   YYID (0)
 
 static const yytype_int8 yycheck[] =
 {
-       3,     4,     5,     6,     7,    18,     9,    18,    18,    13,
-      13,    14,    15,    16,    17,    10,    11,    12,     0,    13,
-      17,    13,    12,    -1,    13,    13
+       3,     4,     5,     6,     7,     9,    10,    11,    17,    12,
+      13,    14,    15,    16,     0,    17,    17,    12,    16,    12,
+      11,    -1,    12,    12
 };
 
 /* YYSTOS[STATE-NUM] -- The (internal number of the) accessing
    symbol of state STATE-NUM.  */
 static const yytype_uint8 yystos[] =
 {
-       0,     3,     4,     5,     6,     7,     9,    13,    14,    15,
-      16,    17,    21,    22,    23,    18,    18,    18,    13,    10,
-      11,    12,     0,    23,    13,    17,    13,    12,    13
+       0,     3,     4,     5,     6,     7,    12,    13,    14,    15,
+      16,    20,    21,    22,    17,    17,    17,     9,    10,    11,
+       0,    22,    12,    16,    12,    11,    12
 };
 
 #define yyerrok                (yyerrstatus = 0)
@@ -1435,31 +1430,21 @@ yyreduce:
         case 4:
 
 /* Line 1806 of yacc.c  */
-#line 80 "sapi/phpdbg/dev/phpdbg_parser.y"
+#line 79 "sapi/phpdbg/dev/phpdbg_parser.y"
     { phpdbg_stack_push(stack, &(yyvsp[(1) - (1)])); }
     break;
 
   case 5:
 
 /* Line 1806 of yacc.c  */
-#line 81 "sapi/phpdbg/dev/phpdbg_parser.y"
+#line 80 "sapi/phpdbg/dev/phpdbg_parser.y"
     { phpdbg_stack_push(stack, &(yyvsp[(2) - (2)])); }
     break;
 
   case 6:
 
 /* Line 1806 of yacc.c  */
-#line 85 "sapi/phpdbg/dev/phpdbg_parser.y"
-    {
-               (yyval).type = OPLINE_PARAM;
-               (yyval).num = (yyvsp[(2) - (2)]).num; 
-       }
-    break;
-
-  case 7:
-
-/* Line 1806 of yacc.c  */
-#line 89 "sapi/phpdbg/dev/phpdbg_parser.y"
+#line 84 "sapi/phpdbg/dev/phpdbg_parser.y"
     {  
                (yyval).type = FILE_PARAM;
                (yyval).file.name = (yyvsp[(1) - (3)]).str;
@@ -1467,10 +1452,10 @@ yyreduce:
        }
     break;
 
-  case 8:
+  case 7:
 
 /* Line 1806 of yacc.c  */
-#line 94 "sapi/phpdbg/dev/phpdbg_parser.y"
+#line 89 "sapi/phpdbg/dev/phpdbg_parser.y"
     { 
                (yyval).type = METHOD_PARAM;
                (yyval).method.class = (yyvsp[(1) - (3)]).str;
@@ -1478,10 +1463,10 @@ yyreduce:
        }
     break;
 
-  case 9:
+  case 8:
 
 /* Line 1806 of yacc.c  */
-#line 99 "sapi/phpdbg/dev/phpdbg_parser.y"
+#line 94 "sapi/phpdbg/dev/phpdbg_parser.y"
     { 
                (yyval).type = NUMERIC_METHOD_PARAM;
                (yyval).method.class = (yyvsp[(1) - (5)]).str;
@@ -1490,10 +1475,10 @@ yyreduce:
        }
     break;
 
-  case 10:
+  case 9:
 
 /* Line 1806 of yacc.c  */
-#line 105 "sapi/phpdbg/dev/phpdbg_parser.y"
+#line 100 "sapi/phpdbg/dev/phpdbg_parser.y"
     {
                (yyval).type = NUMERIC_FUNCTION_PARAM;
                (yyval).str = (yyvsp[(1) - (3)]).str;
@@ -1502,10 +1487,10 @@ yyreduce:
        }
     break;
 
-  case 11:
+  case 10:
 
 /* Line 1806 of yacc.c  */
-#line 111 "sapi/phpdbg/dev/phpdbg_parser.y"
+#line 106 "sapi/phpdbg/dev/phpdbg_parser.y"
     { 
                (yyval).type = COND_PARAM; 
                (yyval).str = (yyvsp[(2) - (2)]).str;
@@ -1513,10 +1498,10 @@ yyreduce:
        }
     break;
 
-  case 12:
+  case 11:
 
 /* Line 1806 of yacc.c  */
-#line 116 "sapi/phpdbg/dev/phpdbg_parser.y"
+#line 111 "sapi/phpdbg/dev/phpdbg_parser.y"
     { 
                (yyval).type = EVAL_PARAM; 
                (yyval).str = (yyvsp[(2) - (2)]).str;
@@ -1524,10 +1509,10 @@ yyreduce:
        }
     break;
 
-  case 13:
+  case 12:
 
 /* Line 1806 of yacc.c  */
-#line 121 "sapi/phpdbg/dev/phpdbg_parser.y"
+#line 116 "sapi/phpdbg/dev/phpdbg_parser.y"
     {  
                (yyval).type = SHELL_PARAM; 
                (yyval).str = (yyvsp[(2) - (2)]).str;
@@ -1535,59 +1520,59 @@ yyreduce:
        }
     break;
 
+  case 13:
+
+/* Line 1806 of yacc.c  */
+#line 121 "sapi/phpdbg/dev/phpdbg_parser.y"
+    { (yyval) = (yyvsp[(1) - (1)]); }
+    break;
+
   case 14:
 
 /* Line 1806 of yacc.c  */
-#line 126 "sapi/phpdbg/dev/phpdbg_parser.y"
+#line 122 "sapi/phpdbg/dev/phpdbg_parser.y"
     { (yyval) = (yyvsp[(1) - (1)]); }
     break;
 
   case 15:
 
 /* Line 1806 of yacc.c  */
-#line 127 "sapi/phpdbg/dev/phpdbg_parser.y"
+#line 123 "sapi/phpdbg/dev/phpdbg_parser.y"
     { (yyval) = (yyvsp[(1) - (1)]); }
     break;
 
   case 16:
 
 /* Line 1806 of yacc.c  */
-#line 128 "sapi/phpdbg/dev/phpdbg_parser.y"
+#line 124 "sapi/phpdbg/dev/phpdbg_parser.y"
     { (yyval) = (yyvsp[(1) - (1)]); }
     break;
 
   case 17:
 
 /* Line 1806 of yacc.c  */
-#line 129 "sapi/phpdbg/dev/phpdbg_parser.y"
+#line 125 "sapi/phpdbg/dev/phpdbg_parser.y"
     { (yyval) = (yyvsp[(1) - (1)]); }
     break;
 
   case 18:
 
 /* Line 1806 of yacc.c  */
-#line 130 "sapi/phpdbg/dev/phpdbg_parser.y"
+#line 126 "sapi/phpdbg/dev/phpdbg_parser.y"
     { (yyval) = (yyvsp[(1) - (1)]); }
     break;
 
   case 19:
 
 /* Line 1806 of yacc.c  */
-#line 131 "sapi/phpdbg/dev/phpdbg_parser.y"
-    { (yyval) = (yyvsp[(1) - (1)]); }
-    break;
-
-  case 20:
-
-/* Line 1806 of yacc.c  */
-#line 132 "sapi/phpdbg/dev/phpdbg_parser.y"
+#line 127 "sapi/phpdbg/dev/phpdbg_parser.y"
     { (yyval) = (yyvsp[(1) - (1)]); }
     break;
 
 
 
 /* Line 1806 of yacc.c  */
-#line 1591 "sapi/phpdbg/phpdbg_parser.c"
+#line 1576 "sapi/phpdbg/phpdbg_parser.c"
       default: break;
     }
   /* User semantic actions sometimes alter yychar, and that requires
@@ -1818,6 +1803,6 @@ yyreturn:
 
 
 /* Line 2067 of yacc.c  */
-#line 135 "sapi/phpdbg/dev/phpdbg_parser.y"
+#line 130 "sapi/phpdbg/dev/phpdbg_parser.y"
 
 
index ca9d8b08b3e9d73b91221af045c3f0bc45d76cd4..413d3ae192e9e2cec7f388ef10ad53bd898db3e3 100644 (file)
@@ -58,17 +58,16 @@ typedef void* yyscan_t;
      T_TRUTHY = 261,
      T_FALSY = 262,
      T_STRING = 263,
-     T_SQUIGGLE = 264,
-     T_COLON = 265,
-     T_DCOLON = 266,
-     T_POUND = 267,
-     T_DIGITS = 268,
-     T_LITERAL = 269,
-     T_ADDR = 270,
-     T_OPCODE = 271,
-     T_ID = 272,
-     T_INPUT = 273,
-     T_UNEXPECTED = 274
+     T_COLON = 264,
+     T_DCOLON = 265,
+     T_POUND = 266,
+     T_DIGITS = 267,
+     T_LITERAL = 268,
+     T_ADDR = 269,
+     T_OPCODE = 270,
+     T_ID = 271,
+     T_INPUT = 272,
+     T_UNEXPECTED = 273
    };
 #endif