[#85349] [Ruby trunk Bug#14334] Segmentation fault after running rspec (ruby/2.5.0/erb.rb:885 / simplecov/source_file.rb:85) — pragtob@...
Issue #14334 has been updated by PragTob (Tobias Pfeiffer).
3 messages
2018/02/02
[#85358] Re: [ruby-cvs:69220] nobu:r62039 (trunk): compile.c: unnecessary freezing — Eric Wong <normalperson@...>
nobu@ruby-lang.org wrote:
5 messages
2018/02/03
[#85612] Why require autoconf 2.67+ — leam hall <leamhall@...>
Please pardon the intrusion; I am new to Ruby and like to pull the
6 messages
2018/02/17
[#85634] [Ruby trunk Bug#14494] [PATCH] tool/m4/ruby_replace_type.m4 use AC_CHECK_TYPES for HAVE_* macros — normalperson@...
Issue #14494 has been reported by normalperson (Eric Wong).
3 messages
2018/02/19
[#85674] [Ruby trunk Feature#13618] [PATCH] auto fiber schedule for rb_wait_for_single_fd and rb_waitpid — matz@...
Issue #13618 has been updated by matz (Yukihiro Matsumoto).
5 messages
2018/02/20
[#85686] Re: [Ruby trunk Feature#13618] [PATCH] auto fiber schedule for rb_wait_for_single_fd and rb_waitpid
— Eric Wong <normalperson@...>
2018/02/20
matz@ruby-lang.org wrote:
[#85704] Re: [Ruby trunk Feature#13618] [PATCH] auto fiber schedule for rb_wait_for_single_fd and rb_waitpid
— Koichi Sasada <ko1@...>
2018/02/21
On 2018/02/20 18:06, Eric Wong wrote:
[ruby-core:85747] [Ruby trunk Bug#14506] Possible bug in cmdarg_stack
From:
ibylich@...
Date:
2018-02-22 09:54:36 UTC
List:
ruby-core #85747
Issue #14506 has been updated by ibylich (Ilya Bylich). This patch does not introduce any logical changes (at least I don't expect any). mame (Yusuke Endoh) wrote: > I think that this is not a bug, and that your patch is for refactoring. Am I right? Yes, exactly. mame (Yusuke Endoh) wrote: > Please clarify your motivation if any. I understand that you want this change [for ease of backporting from parser.y to the parser gem](https://github.com/whitequark/parser/issues/452). I'm neutral to this. Well, MRI's parser can rely only on cmdarg to recognize keyword_do/keyword_do_block, but for example above it doesn't. Instead, it transitions into dual state (which, from what I understand, works like a flag). Parser gem uses Ragel for lexing and Ragel doesn't support dual states. The motivation of this patch is to refactor and simplify this place in MRI to allow backporting of this feature "as is" to the parser gem. ---------------------------------------- Bug #14506: Possible bug in cmdarg_stack https://bugs.ruby-lang.org/issues/14506#change-70588 * Author: ibylich (Ilya Bylich) * Status: Assigned * Priority: Normal * Assignee: nobu (Nobuyoshi Nakada) * Target version: * ruby -v: ruby 2.6.0dev (2018-02-19 trunk 62484) [x86_64-darwin17] * Backport: 2.3: UNKNOWN, 2.4: UNKNOWN, 2.5: UNKNOWN ---------------------------------------- cmdarg stack is a stack of bytes that has 1 on top of it when the parser is in the command mode. But for this code: ~~~ ruby a b(c d), "x" do end ~~~ And this line in parse.y: ~~~ c > SHOW_BITSTACK(p->cmdarg_stack, "BEFORE kDO_BLOCK"); if (CMDARG_P() && !IS_lex_state_for(state, EXPR_CMDARG)) return keyword_do_block; ~~~ It prints: ~~~ text $ dev-ruby -vye 'a b(c d), "x" do end' | grep -E "kDO_BLOCK" BEFORE kDO_BLOCK: 10 at line 7461 ~~~ So CMDARG_P is false. I understand that 'keyword_do_block" is handled later in the "if (IS_lex_state_for(state, (EXPR_BEG | EXPR_ENDARG)))" section, but is it possible to change parser to rely only on cmdarg stack? -- https://bugs.ruby-lang.org/ Unsubscribe: <mailto:ruby-core-request@ruby-lang.org?subject=unsubscribe> <http://lists.ruby-lang.org/cgi-bin/mailman/options/ruby-core>