From 86b710d9133b124fe084bdda278deb7948c9dd90 Mon Sep 17 00:00:00 2001 From: nobu Date: Tue, 18 Jun 2002 15:53:57 +0000 Subject: * parse.y (yylex): ? followed by successive word charaters is ternary operator not numeric literal. git-svn-id: http://svn.ruby-lang.org/repos/ruby/trunk@2583 b2dd03c8-39d4-4d8f-98ff-823fe69b080e --- parse.y | 4 ++++ 1 file changed, 4 insertions(+) (limited to 'parse.y') diff --git a/parse.y b/parse.y index 7d1d81f9e..885b5d312 100644 --- a/parse.y +++ b/parse.y @@ -3300,10 +3300,14 @@ yylex() rb_warn("invalid character syntax; use ?\\%c", c); } } + ternary: pushback(c); lex_state = EXPR_BEG; return '?'; } + if ((ISALNUM(c) || c == '_') && lex_p < lex_pend && is_identchar(*lex_p)) { + goto ternary; + } else if (c == '\\') { c = read_escape(); } -- cgit