From cc05576862a09e52a63e379d72487f3e022798f1 Mon Sep 17 00:00:00 2001 From: otya128 Date: Thu, 8 Dec 2016 21:07:45 +0900 Subject: [PATCH] Support VAR() parsing --- SMILEBASIC/parser.d | 4 +++- SMILEBASIC/token.d | 1 + 2 files changed, 4 insertions(+), 1 deletion(-) diff --git a/SMILEBASIC/parser.d b/SMILEBASIC/parser.d index 3d74556..0daf9c7 100644 --- a/SMILEBASIC/parser.d +++ b/SMILEBASIC/parser.d @@ -59,7 +59,7 @@ class Lexical reserved["BREAK"] = TokenType.Break; reserved["CONTINUE"] = TokenType.Continue; reserved["VAR"] = TokenType.Var; - reserved["DIM"] = TokenType.Var; + reserved["DIM"] = TokenType.Dim; reserved["DEF"] = TokenType.Def; reserved["OUT"] = TokenType.Out; reserved["out"] = TokenType.Out;//ekkitou @@ -993,6 +993,7 @@ class Parser case TokenType.Continue: node = new Continue(lex.location); break; + case TokenType.Dim: case TokenType.Var: lex.popFront(); node = var(); @@ -1744,6 +1745,7 @@ class Parser version(none)stdout.flush(); node = new Constant(token.value, lex.location); break; + case TokenType.Var: case TokenType.Call: case TokenType.Iden: if(!lex.empty()) diff --git a/SMILEBASIC/token.d b/SMILEBASIC/token.d index 79df08e..8727ccb 100644 --- a/SMILEBASIC/token.d +++ b/SMILEBASIC/token.d @@ -73,6 +73,7 @@ enum TokenType Repeat, Until, Swap, + Dim, } struct Token