** Pop the parser's stack once. ** ** If there is a destructor routine associated with the token which ** is popped from the stack, then call it. */
| 411 | ** is popped from the stack, then call it. |
| 412 | */ |
| 413 | static void yy_pop_parser_stack(yyParser *pParser){ |
| 414 | yyStackEntry *yytos; |
| 415 | assert( pParser->yytos!=0 ); |
| 416 | assert( pParser->yytos > pParser->yystack ); |
| 417 | yytos = pParser->yytos--; |
| 418 | #ifndef NDEBUG |
| 419 | if( yyTraceFILE ){ |
| 420 | fprintf(yyTraceFILE,"%sPopping %s\n", |
| 421 | yyTracePrompt, |
| 422 | yyTokenName[yytos->major]); |
| 423 | } |
| 424 | #endif |
| 425 | yy_destructor(pParser, yytos->major, &yytos->minor); |
| 426 | } |
| 427 | |
| 428 | /* |
| 429 | ** Clear all secondary memory allocations from the parser |
no test coverage detected