From 1f0e7223abf65c599e6e63d77965570cd7ab7312 Mon Sep 17 00:00:00 2001 From: tomsmeding Date: Sun, 5 Feb 2017 21:45:02 +0100 Subject: Fix if parsing --- parser.cpp | 2 ++ 1 file changed, 2 insertions(+) diff --git a/parser.cpp b/parser.cpp index 54b0c0c..e2d157c 100644 --- a/parser.cpp +++ b/parser.cpp @@ -385,12 +385,14 @@ static Expression parseAtom(Tokeniser &tokeniser){ if(tok2.type!=Token::Type::word||tok2.str!="then"){ throw ParseError(tok2.site,"Expected 'then' but got '"+tok2.str+"'"); } + tokeniser.advance(); Expression ex1=parseExpression(tokeniser); if(tokeniser.eof())throw ParseError(tokeniser.site(),"Expected 'else' but found EOF"); tok2=tokeniser.get(); if(tok2.type!=Token::Type::word||tok2.str!="else"){ throw ParseError(tok2.site,"Expected 'else' but got '"+tok2.str+"'"); } + tokeniser.advance(); Expression ex2=parseExpression(tokeniser); return Expression(Expression::Type::cond,{cond,ex1,ex2}); -- cgit v1.2.3-54-g00ecf