diff --git a/ChangeLog b/ChangeLog index b6ef204075..f627f1c276 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,8 @@ +Mon May 24 19:00:34 2010 Nobuyoshi Nakada + + * parse.y (warn_balanced, parser_yylex): no warnings after closing + parens. + Mon May 24 08:16:02 2010 Nobuyoshi Nakada * process.c (rb_f_spawn): use correct command name for the error diff --git a/parse.y b/parse.y index 7aa2fe48d5..2a9e8cd68d 100644 --- a/parse.y +++ b/parse.y @@ -6490,6 +6490,7 @@ parser_prepare(struct parser_params *parser) #define warn_balanced(op, syn) \ (last_state != EXPR_CLASS && last_state != EXPR_DOT && \ last_state != EXPR_FNAME && last_state != EXPR_ENDFN && \ + last_state != EXPR_ENDARG && \ space_seen && !ISSPACE(c) && \ (ambiguous_operator(op, syn), 0)) @@ -7256,7 +7257,7 @@ parser_yylex(struct parser_params *parser) COND_LEXPOP(); CMDARG_LEXPOP(); if (c == ')') - lex_state = EXPR_END; + lex_state = EXPR_ENDFN; else lex_state = EXPR_ENDARG; return c;