From f114916610a8cd16dd9fe6d5ebca9d5a8868b04c Mon Sep 17 00:00:00 2001 From: Yukihiro Matsumoto Date: Fri, 31 Aug 2012 15:58:33 +0900 Subject: source position added to exception representation --- src/codegen.c | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) (limited to 'src/codegen.c') diff --git a/src/codegen.c b/src/codegen.c index 6197da33e..6dcc747c3 100644 --- a/src/codegen.c +++ b/src/codegen.c @@ -2074,6 +2074,9 @@ scope_finish(codegen_scope *s, int idx) irep->syms = (mrb_sym *)codegen_realloc(s, s->syms, sizeof(mrb_sym)*s->slen); irep->slen = s->slen; } + if (s->filename) { + irep->filename = s->filename; + } irep->nlocals = s->nlocals; irep->nregs = s->nregs; @@ -2479,12 +2482,12 @@ codegen_start(mrb_state *mrb, parser_state *p) scope->filename = s; } if (setjmp(scope->jmp) != 0) { - if (scope->filename) mrb_free(mrb, scope->filename); + //if (scope->filename) mrb_free(mrb, scope->filename); return -1; } // prepare irep codegen(scope, p->tree, NOVAL); - if (scope->filename) mrb_free(mrb, scope->filename); + // if (scope->filename) mrb_free(mrb, scope->filename); mrb_pool_close(scope->mpool); return 0; } -- cgit v1.2.3