diff --git a/ChangeLog b/ChangeLog index 97b5744a37..556107d003 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,7 @@ +Thu Jun 26 00:48:31 2008 Yukihiro Matsumoto + + * parse.y (primary): not operand might be empty. [ruby-dev:35227] + Wed Jun 25 21:54:34 2008 Yukihiro Matsumoto * parse.y (primary): make functional-style not operator to act diff --git a/parse.y b/parse.y index 2d82b7b61c..bfc8cd9823 100644 --- a/parse.y +++ b/parse.y @@ -2621,6 +2621,14 @@ primary : literal $$ = dispatch2(unary, ripper_intern("not"), $3); %*/ } + | keyword_not '(' rparen + { + /*%%%*/ + $$ = NEW_LIT(Qtrue); + /*% + $$ = dispatch2(unary, ripper_intern("not"), Qnil); + %*/ + } | operation brace_block { /*%%%*/