diff options
author | nobu <nobu@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2007-07-05 08:12:18 +0000 |
---|---|---|
committer | nobu <nobu@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2007-07-05 08:12:18 +0000 |
commit | 46603a78afde1386f92b38f9b16ca86daa93ad88 (patch) | |
tree | f3594fecc31b6f210f95143c7a20c2ea55ae68ce /yarvcore.c | |
parent | a0d50fa3c494ea5afb98c05be049a0cde6fde28d (diff) | |
download | ruby-46603a78afde1386f92b38f9b16ca86daa93ad88.tar.gz |
* include/ruby/{intern,ruby}.h, compile.[ch], error.c, eval.c,
eval_load.c, gc.c, iseq.c, main.c, parse.y, re.c, ruby.c,
yarvcore.[ch] (ruby_eval_tree, ruby_sourcefile, ruby_sourceline,
ruby_nerrs): purge global variables.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@12700 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'yarvcore.c')
-rw-r--r-- | yarvcore.c | 10 |
1 files changed, 5 insertions, 5 deletions
diff --git a/yarvcore.c b/yarvcore.c index 2273ef81cb..b25de4afc4 100644 --- a/yarvcore.c +++ b/yarvcore.c @@ -76,16 +76,16 @@ ID id__send_bang; rb_thread_t *ruby_current_thread = 0; rb_vm_t *ruby_current_vm = 0; -RUBY_EXTERN int ruby_nerrs; - static NODE * compile_string(VALUE str, VALUE file, VALUE line) { + VALUE parser = rb_parser_new(); NODE *node; - node = rb_compile_string(StringValueCStr(file), str, NUM2INT(line)); - if (ruby_nerrs > 0) { - ruby_nerrs = 0; + node = rb_parser_compile_string(parser, StringValueCStr(file), + str, NUM2INT(line)); + + if (!node) { rb_exc_raise(GET_THREAD()->errinfo); /* TODO: check err */ } return node; |