Commit 85a0cad9 authored by Yukihiro Matsumoto's avatar Yukihiro Matsumoto

use new function mrb_parser_free()

parent fc27f712
...@@ -4853,7 +4853,7 @@ load_exec(mrb_state *mrb, parser_state *p) ...@@ -4853,7 +4853,7 @@ load_exec(mrb_state *mrb, parser_state *p)
int n; int n;
if (!p) { if (!p) {
mrb_pool_close(p->pool); mrb_parser_free(p);
return mrb_nil_value(); return mrb_nil_value();
} }
if (p->capture_errors && (!p->tree || p->nerr)) { if (p->capture_errors && (!p->tree || p->nerr)) {
...@@ -4862,11 +4862,11 @@ load_exec(mrb_state *mrb, parser_state *p) ...@@ -4862,11 +4862,11 @@ load_exec(mrb_state *mrb, parser_state *p)
n = snprintf(buf, sizeof(buf), "line %d: %s\n", n = snprintf(buf, sizeof(buf), "line %d: %s\n",
p->error_buffer[0].lineno, p->error_buffer[0].message); p->error_buffer[0].lineno, p->error_buffer[0].message);
mrb->exc = (struct RObject*)mrb_object(mrb_exc_new(mrb, E_SYNTAX_ERROR, buf, n)); mrb->exc = (struct RObject*)mrb_object(mrb_exc_new(mrb, E_SYNTAX_ERROR, buf, n));
mrb_pool_close(p->pool); mrb_parser_free(p);
return mrb_nil_value(); return mrb_nil_value();
} }
n = mrb_generate_code(mrb, p->tree); n = mrb_generate_code(mrb, p->tree);
mrb_pool_close(p->pool); mrb_parser_free(p);
if (n < 0) { if (n < 0) {
mrb->exc = (struct RObject*)mrb_object(mrb_exc_new(mrb, E_SCRIPT_ERROR, "codegen error", 13)); mrb->exc = (struct RObject*)mrb_object(mrb_exc_new(mrb, E_SCRIPT_ERROR, "codegen error", 13));
return mrb_nil_value(); return mrb_nil_value();
......
...@@ -183,7 +183,7 @@ main(int argc, char **argv) ...@@ -183,7 +183,7 @@ main(int argc, char **argv)
parser_dump(mrb, p->tree, 0); parser_dump(mrb, p->tree, 0);
n = mrb_generate_code(mrb, p->tree); n = mrb_generate_code(mrb, p->tree);
mrb_pool_close(p->pool); mrb_parser_free(p);
if (args.verbose) if (args.verbose)
codedump_all(mrb, n); codedump_all(mrb, n);
......
...@@ -184,7 +184,7 @@ main(int argc, char **argv) ...@@ -184,7 +184,7 @@ main(int argc, char **argv)
parser_dump(mrb, p->tree, 0); parser_dump(mrb, p->tree, 0);
n = mrb_generate_code(mrb, p->tree); n = mrb_generate_code(mrb, p->tree);
mrb_pool_close(p->pool); mrb_parser_free(p);
} }
if (n >= 0) { if (n >= 0) {
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment