Default to expression contextual keywords for repl
authorMarek Safar <marek.safar@gmail.com>
Fri, 1 Mar 2013 17:37:39 +0000 (18:37 +0100)
committerMarek Safar <marek.safar@gmail.com>
Fri, 1 Mar 2013 17:39:52 +0000 (18:39 +0100)
mcs/mcs/eval.cs

index 457bff4986b8df63dca767465f3de4899f132521..bb0260575a4a47839914da95df46a96d86cf4227 100644 (file)
@@ -455,6 +455,9 @@ namespace Mono.CSharp
                {
                        Tokenizer tokenizer = new Tokenizer (seekable, source_file, new ParserSession ());
                        
+                       // Prefer contextual block keywords over identifiers
+                       tokenizer.parsing_block++;
+
                        int t = tokenizer.token ();
                        switch (t){
                        case Token.EOF:
@@ -586,6 +589,7 @@ namespace Mono.CSharp
 
                        if (kind == InputKind.StatementOrExpression){
                                parser.Lexer.putback_char = Tokenizer.EvalStatementParserCharacter;
+                               parser.Lexer.parsing_block++;
                                ctx.Settings.StatementMode = true;
                        } else {
                                parser.Lexer.putback_char = Tokenizer.EvalCompilationUnitParserCharacter;