diff options
Diffstat (limited to 'py/parse.c')
-rw-r--r-- | py/parse.c | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/py/parse.c b/py/parse.c index ad13a90309..b20fdaacd2 100644 --- a/py/parse.c +++ b/py/parse.c @@ -720,6 +720,11 @@ memory_error: goto syntax_error; } + // check that parsing resulted in a parse node (can fail on empty input) + if (parser.result_stack_top == 0) { + goto syntax_error; + } + //result_stack_show(parser); //printf("rule stack alloc: %d\n", parser.rule_stack_alloc); //printf("result stack alloc: %d\n", parser.result_stack_alloc); |