* parse.y (literal_concat_gen): concat body from dstr instead of

nd_next.  [ruby-core:25284]


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@24741 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
This commit is contained in:
nobu 2009-09-03 08:57:28 +00:00
parent 468c258d3c
commit fb03cb8275
3 changed files with 16 additions and 1 deletions

View File

@ -1,3 +1,8 @@
Thu Sep 3 17:56:40 2009 Nobuyoshi Nakada <nobu@ruby-lang.org>
* parse.y (literal_concat_gen): concat body from dstr instead of
nd_next. [ruby-core:25284]
Wed Sep 2 16:49:53 2009 Nobuyoshi Nakada <nobu@ruby-lang.org>
* math.c (math_gamma): get rid of direct comparison between too

View File

@ -192,3 +192,11 @@ assert_normal_exit %q{
rescue
end
}, '[ruby-dev:34536]'
assert_equal 'ok', %q{
"#{}""#{}ok"
}, '[ruby-dev:38968]'
assert_equal 'ok', %q{
"#{}o""#{}k""#{}"
}, '[ruby-core:25284]'

View File

@ -7844,7 +7844,9 @@ literal_concat_gen(struct parser_params *parser, NODE *head, NODE *tail)
head = tail;
}
else if (NIL_P(tail->nd_lit)) {
list_concat(head, tail->nd_next);
head->nd_alen += tail->nd_alen - 1;
head->nd_next->nd_end->nd_next = tail->nd_next;
head->nd_next->nd_end = tail->nd_next->nd_end;
rb_gc_force_recycle((VALUE)tail);
}
else {