[#79914] [Ruby trunk Bug#13282] opt_str_freeze does not always dedupe — normalperson@...
Issue #13282 has been reported by Eric Wong.
4 messages
2017/03/05
[#80140] [Ruby trunk Feature#13295] [PATCH] compile.c: apply opt_str_freeze to String#-@ (uminus) — shyouhei@...
Issue #13295 has been updated by shyouhei (Shyouhei Urabe).
5 messages
2017/03/13
[#80362] Re: [Ruby trunk Feature#13295] [PATCH] compile.c: apply opt_str_freeze to String#-@ (uminus)
— Eric Wong <normalperson@...>
2017/03/26
shyouhei@ruby-lang.org wrote:
[#80368] Re: [Ruby trunk Feature#13295] [PATCH] compile.c: apply opt_str_freeze to String#-@ (uminus)
— SASADA Koichi <ko1@...>
2017/03/27
On 2017/03/26 15:16, Eric Wong wrote:
[#80205] Re: [ruby-cvs:65166] duerst:r58000 (trunk): clarifiy 'codepoint' in documentation of String#each_codepoint — Eric Wong <normalperson@...>
duerst@ruby-lang.org wrote:
4 messages
2017/03/17
[#80213] Re: [ruby-cvs:65166] duerst:r58000 (trunk): clarifiy 'codepoint' in documentation of String#each_codepoint
— Martin J. Dürst <duerst@...>
2017/03/17
Hello Eric,
[#80290] [Ruby trunk Feature#13355] [PATCH] compile.c: optimize literal String range in case/when dispatch — normalperson@...
Issue #13355 has been reported by normalperson (Eric Wong).
4 messages
2017/03/23
[#80410] Re: [Ruby trunk Feature#13355] [PATCH] compile.c: optimize literal String range in case/when dispatch
— Eric Wong <normalperson@...>
2017/03/27
normalperson@yhbt.net wrote:
[#80415] [Ruby trunk Feature#12589] VM performance improvement proposal — vmakarov@...
Issue #12589 has been updated by vmakarov (Vladimir Makarov).
5 messages
2017/03/28
[#80488] [Ruby trunk Feature#12589] VM performance improvement proposal — vmakarov@...
Issue #12589 has been updated by vmakarov (Vladimir Makarov).
4 messages
2017/03/29
[ruby-core:80414] [Ruby trunk Bug#13371] Syntax Error with regex when parens are omitted
From:
shyouhei@...
Date:
2017-03-28 02:06:52 UTC
List:
ruby-core #80414
Issue #13371 has been updated by shyouhei (Shyouhei Urabe).
ndn (Nikola Nenkov) wrote:
> Yes, but it was more of a question if it's a bug or not. Like should I use `%r//` when omitting parens as a principle? If yes - I would submit a PR in Rubocop and so on.
I can't say for sure from memory but this language ambiguity between regular expressions versus binary division is very hard to reroute, if not impossible. So even if this is a bug, yes I recommend you to use %r. I think it wouldn't be fixed anytime soon.
----------------------------------------
Bug #13371: Syntax Error with regex when parens are omitted
https://bugs.ruby-lang.org/issues/13371#change-63909
* Author: ndn (Nikola Nenkov)
* Status: Open
* Priority: Normal
* Assignee:
* Target version:
* ruby -v: 2.4.1
* Backport: 2.2: UNKNOWN, 2.3: UNKNOWN, 2.4: UNKNOWN
----------------------------------------
When you skip the parens of method invocations and pass a regex, you can get a `SyntaxError` if the regex starts with a space.
~~~ ruby
''.split(/ ./) # => []
''.split /./ # => []
''.split / ./ # !> SyntaxError: unexpected '.'
~~~
As per the syntax highlighting in my text editor and a discussion with another person, it seems that the opening slash is interpreted as division:
~~~ ruby
require 'ripper'
Ripper.lex("''.split /./")
# =>
# [[[1, 0], :on_tstring_beg, "'"],
# [[1, 1], :on_tstring_end, "'"],
# [[1, 2], :on_period, "."],
# [[1, 3], :on_ident, "split"],
# [[1, 8], :on_sp, " "],
# [[1, 9], :on_regexp_beg, "/"],
# # ^^^
# [[1, 10], :on_tstring_content, "."],
# [[1, 11], :on_regexp_end, "/"]]
Ripper.lex("''.split / ./")
# =>
# [[[1, 0], :on_tstring_beg, "'"],
# [[1, 1], :on_tstring_end, "'"],
# [[1, 2], :on_period, "."],
# [[1, 3], :on_ident, "split"],
# [[1, 8], :on_sp, " "],
# [[1, 9], :on_op, "/"],
# # ^^^
# [[1, 10], :on_sp, " "],
# [[1, 11], :on_period, "."],
# [[1, 12], :on_op, "/"]]
~~~
Reproducible with older versions as well (tried it until 2.1.2)
--
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>