From 604689628dc64d050a68f1ebe5e06f9105474936 Mon Sep 17 00:00:00 2001 From: nobu Date: Thu, 14 Nov 2002 13:51:19 +0000 Subject: * configure.in (LIBRUBY_A): append -static. [ruby-dev:18689] * configure.in (LIBRUBYARG_STATIC, LIBRUBYARG_SHARED): linker argument to link static/shared library respectively. * Makefile.in (LIBRUBYARG_STATIC, LIBRUBYARG_SHARED): added. * bcc32/Makefile.sub, win32/Makefile.sub: ditto. * instruby.rb (LIBRUBY_A): install to libdir. * lib/mkmf.rb (link_command): link static library of ruby, or try_run fails unless LIBRUBY_SO is installed. [ruby-dev:18646] * eval.c (call_trace_func): toplevel caller was missing. [ruby-dev:18754] * eval.c (proc_to_s): adjust created line number. * parse.y (primary, do_block, brace_block): adjust line number of block to beginning line, instead of the first statement inside the block. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@3042 b2dd03c8-39d4-4d8f-98ff-823fe69b080e --- parse.y | 23 +++++++++++++++++------ 1 file changed, 17 insertions(+), 6 deletions(-) (limited to 'parse.y') diff --git a/parse.y b/parse.y index 5b8417f51f..3aef278141 100644 --- a/parse.y +++ b/parse.y @@ -1302,10 +1302,14 @@ primary : literal $$ = NEW_VCALL($1); } | kBEGIN + { + $1 = ruby_sourceline; + } bodystmt kEND { - $$ = NEW_BEGIN($2); + $$ = NEW_BEGIN($3); + nd_set_line($$, $1); } | tLPAREN_ARG expr {lex_state = EXPR_ENDARG;} ')' { @@ -1589,22 +1593,27 @@ opt_block_var : none do_block : kDO_BLOCK { $$ = dyna_push(); + $1 = ruby_sourceline; } opt_block_var compstmt kEND { $$ = NEW_ITER($3, 0, $4); - fixpos($$, $3?$3:$4); + nd_set_line($$, $1); dyna_pop($2); } - | tLBRACE_ARG {$$ = dyna_push();} + | tLBRACE_ARG + { + $$ = dyna_push(); + $1 = ruby_sourceline; + } opt_block_var compstmt '}' { $$ = NEW_ITER($3, 0, $4); - fixpos($$, $3?$3:$4); + nd_set_line($$, $1); dyna_pop($2); } @@ -1661,23 +1670,25 @@ method_call : operation paren_args brace_block : '{' { $$ = dyna_push(); + $1 = ruby_sourceline; } opt_block_var compstmt '}' { $$ = NEW_ITER($3, 0, $4); - fixpos($$, $4); + nd_set_line($$, $1); dyna_pop($2); } | kDO { $$ = dyna_push(); + $1 = ruby_sourceline; } opt_block_var compstmt kEND { $$ = NEW_ITER($3, 0, $4); - fixpos($$, $4); + nd_set_line($$, $1); dyna_pop($2); } ; -- cgit v1.2.3