changeset 47:b0a691727a0c new_gen

Stricter while - the () was optional before
author Anders Halager <halager@gmail.com>
date Wed, 23 Apr 2008 17:09:44 +0200
parents 90fb4fdfefdd
children b6c1dc30ca4b
files parser/Parser.d
diffstat 1 files changed, 6 insertions(+), 0 deletions(-) [+]
line wrap: on
line diff
--- a/parser/Parser.d	Wed Apr 23 17:01:24 2008 +0200
+++ b/parser/Parser.d	Wed Apr 23 17:09:44 2008 +0200
@@ -115,9 +115,15 @@
 
                 return action.actOnIfStmt(_if, cond, thenB, _else, elseB);
 
+            /*
+               while (cond)
+                single statement | compound statement
+             */
             case Tok.While:
                 Token _while = lexer.next;
+                require(Tok.OpenParentheses);
                 Exp cond = parseExpression();
+                require(Tok.CloseParentheses);
                 Stmt bodyStmt = parseSingleOrCompoundStatement();
                 return action.actOnWhileStmt(_while, cond, bodyStmt);