diff --git a/include/chaiscript/language/chaiscript_eval.hpp b/include/chaiscript/language/chaiscript_eval.hpp index d75e957..d3d342c 100644 --- a/include/chaiscript/language/chaiscript_eval.hpp +++ b/include/chaiscript/language/chaiscript_eval.hpp @@ -982,9 +982,10 @@ namespace chaiscript Boxed_Value eval_block(Eval_System &ss, const TokenPtr &node) { Boxed_Value retval; unsigned int i; + unsigned int num_children = node->children.size(); ss.new_scope(); - for (i = 0; i < node->children.size(); ++i) { + for (i = 0; i < num_children; ++i) { try { retval = eval_token(ss, node->children[i]); } diff --git a/include/chaiscript/language/chaiscript_parser.hpp b/include/chaiscript/language/chaiscript_parser.hpp index 7ee2fd6..1ba9a42 100644 --- a/include/chaiscript/language/chaiscript_parser.hpp +++ b/include/chaiscript/language/chaiscript_parser.hpp @@ -1586,7 +1586,6 @@ namespace chaiscript if (Operator_Helper(precedence)) { do { if (!Operator(precedence+1)) { - std::cout << std::string(input_pos, input_end); throw Eval_Error("Incomplete " + std::string(token_type_to_string(operators[precedence])) + " expression", File_Position(line, col), filename); } diff --git a/samples/eval.chai b/samples/eval.chai index 8ad49ec..200bda6 100644 --- a/samples/eval.chai +++ b/samples/eval.chai @@ -1,3 +1,2 @@ var i = 1 var j = eval("5 + 4") -print(j) diff --git a/samples/for.chai b/samples/for.chai index ba9cdb8..87c94b3 100644 --- a/samples/for.chai +++ b/samples/for.chai @@ -2,11 +2,11 @@ for (var i = 0; i < 10; ++i) { print(i) } -for (i = 10; i >= 0; i -= 2) { +for (var i = 10; i >= 0; i -= 2) { print(i) } -i = 0 +var i = 0 for (; i < 5; ++i) { print(i)