changed parsing of real and interger literals to char* / string instead of int and double since we had a loss of precision in convertion of double to string.