diff --git a/boxedcpp/bootstrap.hpp b/boxedcpp/bootstrap.hpp index 27a5f31..484e842 100644 --- a/boxedcpp/bootstrap.hpp +++ b/boxedcpp/bootstrap.hpp @@ -107,6 +107,18 @@ P1 &subtractsequal(P1 &p1, const P2 &p2) return (p1 -= p2); } +template +P1 &prefixincrement(P1 &p1) +{ + return (++p1); +} + +template +P1 &prefixdecrement(P1 &p1) +{ + return (--p1); +} + //Add canonical forms of operators template void add_oper_equals(BoxedCPP_System &s) @@ -210,6 +222,8 @@ void add_opers_arithmetic_overload(BoxedCPP_System &s) register_function(s, ÷sequal, "/="); register_function(s, &subtractsequal, "-="); register_function(s, &addsequal, "+="); + register_function(s, &prefixincrement, "++"); + register_function(s, &prefixdecrement, "--"); } template diff --git a/samples/for.wes b/samples/for.wes index 879c20b..ba9cdb8 100644 --- a/samples/for.wes +++ b/samples/for.wes @@ -1,4 +1,4 @@ -for (var i = 0; i < 10; i += 1) { +for (var i = 0; i < 10; ++i) { print(i) } @@ -8,6 +8,6 @@ for (i = 10; i >= 0; i -= 2) { i = 0 -for (; i < 5; i += 1) { +for (; i < 5; ++i) { print(i) } diff --git a/wesley/main.cpp b/wesley/main.cpp index 7308d5f..245fc0f 100644 --- a/wesley/main.cpp +++ b/wesley/main.cpp @@ -554,7 +554,7 @@ TokenPtr parse(Rule &rule, std::vector &tokens, const char *filename) std::pair results = rule(iter, end, parent); if (results.second) { - debug_print(parent, ""); + //debug_print(parent, ""); return parent; } else {