From: krakjoe Date: Fri, 21 Feb 2014 16:29:09 +0000 (+0000) Subject: ... X-Git-Tag: php-5.6.0beta2~1^2~37^2~20^2~24 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=b82ad53b29eea3edb6174f176cb7f8b700eb0249;p=php ... --- diff --git a/dev/phpdbg_lexer.l b/dev/phpdbg_lexer.l index ae8eeb7831..111df94104 100644 --- a/dev/phpdbg_lexer.l +++ b/dev/phpdbg_lexer.l @@ -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); diff --git a/dev/phpdbg_parser.y b/dev/phpdbg_parser.y index a811ba870d..8155f67043 100644 --- a/dev/phpdbg_parser.y +++ b/dev/phpdbg_parser.y @@ -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; diff --git a/phpdbg_cmd.c b/phpdbg_cmd.c index 3974edb8d1..cbd769ff4b 100644 --- a/phpdbg_cmd.c +++ b/phpdbg_cmd.c @@ -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; diff --git a/phpdbg_cmd.h b/phpdbg_cmd.h index d6cd19dfc1..2834ee06d3 100644 --- a/phpdbg_cmd.h +++ b/phpdbg_cmd.h @@ -44,7 +44,6 @@ typedef enum { SHELL_PARAM, COND_PARAM, OP_PARAM, - OPLINE_PARAM, ORIG_PARAM } phpdbg_param_type; diff --git a/phpdbg_lexer.c b/phpdbg_lexer.c index 590d0825d7..9e6424ee08 100644 --- a/phpdbg_lexer.c +++ b/phpdbg_lexer.c @@ -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 #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" diff --git a/phpdbg_lexer.h b/phpdbg_lexer.h index 0395393613..204ecb6c94 100644 --- a/phpdbg_lexer.h +++ b/phpdbg_lexer.h @@ -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" diff --git a/phpdbg_parser.c b/phpdbg_parser.c index c252c7ab9d..599758f44f 100644 --- a/phpdbg_parser.c +++ b/phpdbg_parser.c @@ -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" diff --git a/phpdbg_parser.h b/phpdbg_parser.h index ca9d8b08b3..413d3ae192 100644 --- a/phpdbg_parser.h +++ b/phpdbg_parser.h @@ -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