parse.y: ambiguous parentheses

* parse.y (parser_yylex): warn ambiguous parentheses after a space
  in method definitions.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@56927 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
This commit is contained in:
nobu 2016-11-29 10:47:43 +00:00
Родитель dacf977a42
Коммит 65e27c8b13
3 изменённых файлов: 12 добавлений и 8 удалений

Просмотреть файл

@ -15,17 +15,17 @@ class Date
protected :d
def zero? () false end
def finite? () false end
def infinite? () d.nonzero? end
def nan? () d.zero? end
def zero?() false end
def finite?() false end
def infinite?() d.nonzero? end
def nan?() d.zero? end
def abs() self.class.new end
def -@ () self.class.new(-d) end
def +@ () self.class.new(+d) end
def -@() self.class.new(-d) end
def +@() self.class.new(+d) end
def <=> (other)
def <=>(other)
case other
when Infinity; return d <=> other.d
when Numeric; return d

Просмотреть файл

@ -381,7 +381,7 @@ module OpenSSL::Buffering
# Writes +s+ to the stream. +s+ will be converted to a String using
# String#to_s.
def << (s)
def <<(s)
do_write(s)
self
end

Просмотреть файл

@ -8520,6 +8520,10 @@ parser_yylex(struct parser_params *parser)
else if (IS_SPCARG(-1)) {
c = tLPAREN_ARG;
}
else if (IS_lex_state(EXPR_ENDFN) && space_seen) {
rb_warning0("parentheses after method name is interpreted as");
rb_warning0("an argument list, not a decomposed argument");
}
paren_nest++;
COND_PUSH(0);
CMDARG_PUSH(0);