/// <summary>
        /// Constructor for the Syntax Analyzer class.
        /// </summary>
        /// <param name="commandLineFileName"></param>
        public SyntaxAnalyzer(string commandLineFileName)
        {
            lexicalAnalyzer           = new LexicalAnalyzer(commandLineFileName);
            symbolTable               = new SymbolTable();
            intermediateCodeGenerator = new IntermediateCodeGenerator();

            intermediateCodeGenerator.SetupTacFile(commandLineFileName);

            // Prime the parser
            lexicalAnalyzer.GetNextToken();
        }
        ///// <summary>
        ///// Method that converts a table entry to a const int entry.
        ///// </summary>
        ///// <param name="tableEntry"></param>
        //public void ConvertEntryToIntConstantEntry(ISymbolTableEntry tableEntry)
        //{
        //    Constant<int?> entry = tableEntry as SymbolTableEntry;
        //    entry.Value = value;
        //    entry.TypeOfConst = dataType;
        //    entry.Offset = offset;
        //    entry.TypeOfEntry = EntryType.constEntry;
        //    entry.OffsetNotation = BpOffsetNotation;
        //    Insert(entry);
        //    /* Use for testing: DisplayConstIntEntry(entry); */
        //}

        /// <summary>
        /// Method that converts a table entry to a var entry.
        /// </summary>
        /// <param name="tableEntry"></param>
        public void ConvertEntryToVariableEntry(IntermediateCodeGenerator intermediateCodeGenerator, ISymbolTableEntry tableEntry, bool isParameter)
        {
            Variable entry = tableEntry as SymbolTableEntry;

            entry.TypeOfVariable = dataType;
            entry.Offset         = offset;
            entry.OffsetNotation = BpOffsetNotation;//isParameter ? intermediateCodeGenerator.CalculateParameterOffsetNotation(entry) : intermediateCodeGenerator.CalculateLocalVariableOffsetNotation(entry);
            entry.Size           = size;
            entry.TypeOfEntry    = EntryType.varEntry;
            entry.OffsetNotation = BpOffsetNotation;
            Insert(entry);
            /* Use for testing: DisplayVariableEntry(entry); */
        }