From 9b3e0ca63ce5bf47533ec1904605e69c3799bb0f Mon Sep 17 00:00:00 2001 From: usa Date: Thu, 14 Sep 2017 04:21:43 +0000 Subject: merge revision(s) 59644: [Backport #13836] parse.y: primary should not be 0 * parse.y (primary): should not be 0, since it can be a receiver. [ruby-core:82447] [Bug #13836] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_2_3@59881 b2dd03c8-39d4-4d8f-98ff-823fe69b080e --- parse.y | 2 +- test/ruby/test_defined.rb | 4 ++++ version.h | 2 +- 3 files changed, 6 insertions(+), 2 deletions(-) diff --git a/parse.y b/parse.y index 10d428e4fd..aa8a743412 100644 --- a/parse.y +++ b/parse.y @@ -2701,7 +2701,7 @@ primary : literal | tLPAREN_ARG {SET_LEX_STATE(EXPR_ENDARG);} rparen { /*%%%*/ - $$ = 0; + $$ = NEW_BEGIN(0); /*% $$ = dispatch1(paren, 0); %*/ diff --git a/test/ruby/test_defined.rb b/test/ruby/test_defined.rb index de7ba9cc14..54f461ff03 100644 --- a/test/ruby/test_defined.rb +++ b/test/ruby/test_defined.rb @@ -99,6 +99,10 @@ class TestDefined < Test::Unit::TestCase end end + def test_defined_empty_paren_arg + assert_nil(defined?(p () + 1)) + end + def test_defined_impl_specific feature7035 = '[ruby-core:47558]' # not spec assert_predicate(defined?(Foo), :frozen?, feature7035) diff --git a/version.h b/version.h index 93c12b4387..5baa49119a 100644 --- a/version.h +++ b/version.h @@ -1,6 +1,6 @@ #define RUBY_VERSION "2.3.5" #define RUBY_RELEASE_DATE "2017-09-14" -#define RUBY_PATCHLEVEL 371 +#define RUBY_PATCHLEVEL 372 #define RUBY_RELEASE_YEAR 2017 #define RUBY_RELEASE_MONTH 9 -- cgit v1.2.3