Skip to content

Commit

Permalink
* eval.c (ruby_current_node) : added to set sourceline on demand.
Browse files Browse the repository at this point in the history
* eval.c (error_pos, error_print, rb_longjmp, assign): set source
  file/line.

* eval.c (rb_eval): store current node instead of file/line, and
  preserve it at return.

* eval.c (module_setup): ditto.

* eval.c (struct thread): store node instead of file/line.

* eval.c (rb_thread_raise): ditto.

* intern.h (ruby_current_node): added.

* intern.h (ruby_set_current_source): added.

* parse.y (stmt, arg): not fix position of assignment.

* parse.y (node_assign): ditto.

* parse.y (yycompile): clear current node.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@2709 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
  • Loading branch information
nobu committed Aug 15, 2002
1 parent b604386 commit 92ca6c7
Show file tree
Hide file tree
Showing 7 changed files with 125 additions and 109 deletions.
26 changes: 26 additions & 0 deletions ChangeLog
Original file line number Diff line number Diff line change
@@ -1,3 +1,29 @@
Thu Aug 15 20:38:58 2002 Nobuyoshi Nakada <[email protected]>

* eval.c (ruby_current_node) : added to set sourceline on demand.

* eval.c (error_pos, error_print, rb_longjmp, assign): set source
file/line.

* eval.c (rb_eval): store current node instead of file/line, and
preserve it at return.

* eval.c (module_setup): ditto.

* eval.c (struct thread): store node instead of file/line.

* eval.c (rb_thread_raise): ditto.

* intern.h (ruby_current_node): added.

* intern.h (ruby_set_current_source): added.

* parse.y (stmt, arg): not fix position of assignment.

* parse.y (node_assign): ditto.

* parse.y (yycompile): clear current node.

Tue Aug 13 15:32:14 2002 Yukihiro Matsumoto <[email protected]>

* hash.c (rb_hash_replace): should copy ifnone.
Expand Down
3 changes: 1 addition & 2 deletions env.h
Original file line number Diff line number Diff line change
Expand Up @@ -23,8 +23,7 @@ extern struct FRAME {
VALUE cbase;
struct FRAME *prev;
struct FRAME *tmp;
char *file;
int line;
struct RNode *node;
int iter;
int flags;
} *ruby_frame;
Expand Down
1 change: 1 addition & 0 deletions error.c
Original file line number Diff line number Diff line change
Expand Up @@ -40,6 +40,7 @@ err_snprintf(buf, len, fmt, args)
{
int n;

ruby_set_current_source();
if (!ruby_sourcefile) {
vsnprintf(buf, len, fmt, args);
return;
Expand Down
Loading

0 comments on commit 92ca6c7

Please sign in to comment.