是什么引发了关于模棱两可的第一个参数的Ruby警告?

And*_*imm 17 ruby warnings

在Ruby 1.9.1中,如果你这样做

$VERBOSE = true
puts /m/ , 42.to_s
Run Code Online (Sandbox Code Playgroud)

或者如果我这样做

$VERBOSE = true
puts /m/ , "42"
Run Code Online (Sandbox Code Playgroud)

你收到了警告

warning: ambiguous first argument; put parentheses or even spaces
Run Code Online (Sandbox Code Playgroud)

但是,如果我这样做,我就不会理解

$VERBOSE = true
puts "m" , 42.to_s
Run Code Online (Sandbox Code Playgroud)

要么

$VERBOSE = true
puts(/m/, 42.to_s)
Run Code Online (Sandbox Code Playgroud)

那么什么具体触发了这个警告?还有什么空间可以添加到原始表达式中?

Dig*_*oss 15

"问题" /可能意味着分裂或正则表达.该消息是通用的; 解析器并不一定意味着空格会帮助给定的特定表达式.