diff --git a/Nodejs/Product/Analysis/JavaScript/jsparser.cs b/Nodejs/Product/Analysis/JavaScript/jsparser.cs index a670492fa..b3e975b1e 100644 --- a/Nodejs/Product/Analysis/JavaScript/jsparser.cs +++ b/Nodejs/Product/Analysis/JavaScript/jsparser.cs @@ -18,11 +18,10 @@ using System.Collections.Generic; using System.Diagnostics; using System.Globalization; -using System.IO; -using System.Reflection; using System.Runtime.Serialization; using Microsoft.Ajax.Utilities; + namespace Microsoft.NodejsTools.Parsing { /// @@ -1086,7 +1085,7 @@ private Statement ParseForStatement() Statement lhs = null; Statement initializer = null; int headerEnd = -1; - List varList = new List(); + var varList = new List(); try { if (JSToken.Var == _curToken @@ -1108,16 +1107,20 @@ private Statement ParseForStatement() } var varInitializer = ParseIdentifierInitializer(JSToken.In); - varList.Add(varInitializer); - UpdateWithOtherNode(declaration, varInitializer); + if (varInitializer != null) { + varList.Add(varInitializer); + UpdateWithOtherNode(declaration, varInitializer); + } // a list of variable initializers is allowed only in a for(;;) while (JSToken.Comma == _curToken) { isForIn = false; varInitializer = ParseIdentifierInitializer(JSToken.In); - varList.Add(varInitializer); - UpdateWithOtherNode(declaration, initializer); + if (varInitializer != null) { + varList.Add(varInitializer); + UpdateWithOtherNode(declaration, initializer); + } //initializer = new Comma(initializer.context.CombineWith(var.context), initializer, var); }